Systemvariable über Batch nicht abrufbar!
Guten Morgen zusammen,
ich habe testhalber mehrere Systemvariablen angelegt, die ich in zukünftigen Batches verwenden möchte (Über System -> Erweiterte Systemeinstellungen -> .
Beispiel:
10001 ist der Variablennamen mit dem Wert 127.0.0.1
Wenn ich diese Variable nun im DOS-Fenster mit %10001% eingebe, erscheint mein gewünschter Wert.
Wenn ich allerdings eine Batch-File erstelle mit folgendem Code:
Erscheint bei mir nur der Hinweis echo 0001.
Gebe ich es mit %% ein, erscheint nur der Variablenname %10001%
Wie kann ich also nun korrekt die Systemvariablen in einer Batch einbauen, sodass ich andere Abfragen etc. sparen kann, um meinen gewünschten Wert abzurufen?
Danke im Voraus.
Mit freundlichen Grüßen.
ich habe testhalber mehrere Systemvariablen angelegt, die ich in zukünftigen Batches verwenden möchte (Über System -> Erweiterte Systemeinstellungen -> .
Beispiel:
10001 ist der Variablennamen mit dem Wert 127.0.0.1
Wenn ich diese Variable nun im DOS-Fenster mit %10001% eingebe, erscheint mein gewünschter Wert.
Wenn ich allerdings eine Batch-File erstelle mit folgendem Code:
echo %10001%
pause
Erscheint bei mir nur der Hinweis echo 0001.
Gebe ich es mit %% ein, erscheint nur der Variablenname %10001%
Wie kann ich also nun korrekt die Systemvariablen in einer Batch einbauen, sodass ich andere Abfragen etc. sparen kann, um meinen gewünschten Wert abzurufen?
Danke im Voraus.
Mit freundlichen Grüßen.
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 330170
Url: https://administrator.de/forum/systemvariable-ueber-batch-nicht-abrufbar-330170.html
Ausgedruckt am: 20.04.2025 um 07:04 Uhr
7 Kommentare
Neuester Kommentar
Hallo Brotkasten,
was Du wahrscheinlich benötigst ist doppeltes Parsing des Variablennamens (siehe Zeilen 27, 31, 35):
Grüße
Friemler
was Du wahrscheinlich benötigst ist doppeltes Parsing des Variablennamens (siehe Zeilen 27, 31, 35):
@echo off & setlocal
::Testdaten
set "h1234=127.0.0.1"
set "l1234=127.0.0.2"
set "b1234=127.0.0.3"
:Start
set /p "KDNR=Bitte KDNR eingeben: "
if %KDNR% GTR 10915 goto :Start
:Auswahl
set /p "Auswahl=Bitte auswählen auf welchem Rechner das CMD gestartet werden soll. HPC (h) LPC (l) BPC (b) : "
for %%k in (H L B) do (
if /i "%Auswahl%" equ "%%k" goto :%%k
)
::Fehlermeldung und Rücksprung
echo Ungültige Auswahl & echo.
goto :Auswahl
:H
call set "IP=%%h%KDNR%%%"
goto :Weiter
:L
call set "IP=%%l%KDNR%%%"
goto :Weiter
:B
call set "IP=%%b%KDNR%%%"
goto :Weiter
:Weiter
echo %IP%
::Script-Ende mit Exit Code 0
exit /b 0
Grüße
Friemler
Hallo Brotkasten,
gern geschehen.
Der doppelte Doppelpunkt am Zeilenanfang kennzeichnet eine komplette Zeile als Kommentar. Finde ich schöner als den eigentlich für Kommentare gedachten
Auch Dir einen schönen Abend
Friemler
gern geschehen.
Der doppelte Doppelpunkt am Zeilenanfang kennzeichnet eine komplette Zeile als Kommentar. Finde ich schöner als den eigentlich für Kommentare gedachten
REM
-Befehl, der allerdings den Vorteil hat, auch mitten in einer Zeile verwendbar zu sein, z.B.echo Hier lief etwas schief & rem Fehlermeldung ausgeben
Auch Dir einen schönen Abend
Friemler