blener
Goto Top

Variable für Leer?

Hallo kennt jemand die Variable für leerzeichen?

set var=" "
if %var%==? echo ja

wenn die batch datei ausgeführt wird soll ja erscheinen.

Content-Key: 26348

Url: https://administrator.de/contentid/26348

Printed on: April 24, 2024 at 17:04 o'clock

Member: blener
blener Feb 21, 2006 at 16:25:56 (UTC)
Goto Top
antwort selbst gefunden:

echo off
set /p hallo=
if not "%hallo%"="" goto a:
:a echo ausgang
goto exit
Member: joerns
joerns Jul 15, 2006 at 11:54:46 (UTC)
Goto Top
Das kommt mir komisch vor, denn selbst, wenn überprüfung "True" zurückgibt, landet man in der nächsten zeile, also bei "echo ausgang"

js
Member: Biber
Biber Jul 20, 2006 at 18:29:16 (UTC)
Goto Top
Das kommt mir komisch vor, ...

Mir auch, mir auch....

Schon bei
if not "%hallo%"="" ....
...sollte Mecker kommen: "=" "" ist syntaktisch an dieser Stelle nicht verarbeitbar.
Denn es sollten zwei Gleichheitszeichen sein beim IF-Vergleich.
Ob "goto a:" toleriert wird, weiß ich nicht, "goto a" (ohne Doppelpunkt) reicht aber.

Ob bei dieser Sprungmarke namens ":a" nun "echo ausgang" dahintersteht oder "Killroy was here" ist relativ gleichwertig. Wird beides ignoriert.
Und das "goto exit" wird dann als abschlussmeldung bringen "Sprungmarke nicht gefunden", weil es kein Label ":exit" gibt.
Also unterm Strich könnte es so ähnlich funktionieren:
@echo off
set /p hallo=
if "%hallo%"=="" goto :eof   
echo Variable [hallo] hat den Wert: [%hallo%].
:. das "Pause" kommt aber nur, weil unten das "exit" folgt und sonst das Fenster zumacht,   
:: bevor jemand das lesen kann
pause 
:a echo ausgang und zwei Becher Joghurt und Oma anrufen....
exit

So in etwa, denke ich...
Biber