Mit BATCH prüfen auf Systemvariable

Hallo, ich habe hier das Problem, dass ich auf eine gesetzte Systemvariable prüfen muss. Ist diese Systemvariable (servername) gesetzt verwende ich diese Variable in meiner batch als lokale variale servername. Solle diese Systemvariable aber nicht bestehen nehme ich die Systemvariable compuername und will ein „set servername=%computername%“ ausführen.
Aber ich bekomme das irgendwie überhaupt ned hin! Habs auch schon mit Errorlevel-abfrage versucht aber ohne Erfolg.
Hier meine Versuche:
REM if ERRORLEVEL == 1 set servername=%computername%
REM if [%servername:~0,1%] == [%] [SET servername=%computername%]
REM if not %servername%
REM if [%servername%] == [] [set %servername% = %computername%]

Freue mich über jede Idee.
THX
Chris

Hi,
hat sich schon selbst erledigt; hab wohl gestern zu lange rumprobiert.
Also für alle die es interessiert wie es bei mir funktioniert:

set servername
if ERRORLEVEL == 1 set servername=%computername%

Erklärung: wenn die Systemvariable servername nicht gesetzt ist, gibt „set servername“ einen Errorlevel 1 zurücke. Demnach frage ich einfach nach ERRORLEVEL == 1 ab.

Mahlzeit,

deine Lösung in Ehren, aber warum einfach, wenn es auch kompliziert geht? Normalerweise prüfst du das doch direkt mit IF:

set Computername=Mein\_Server
echo Servername=%servername%
if "%servername%" == "" set servername=%computername%
echo Servername=%servername%

Gruß

Sancho