Falsche Eingabe bei set p - wie prüfen?
Hallo
Habe da mal eine Frage..
Ich habe folgendes ....
Soweit so gut, nur denke ich, dass das nicht 100% richtig ist.
Was nun, wenn jemand rein zufällig die * taste drückt?
Es soll halt so sein, dass nur j oder n akzeptiert wird und jede andere Taste, oder auch nur die Enter Taste gedrückt wird, das Script nicht weiter macht?
Vielen Dank
Habe da mal eine Frage..
Ich habe folgendes ....
set /p einverstanden=
if /I "%einverstanden%"=="j" goto start
if /I "%einverstanden%"=="n" goto nichteinverstanden
if /I "%einverstanden%"=="*" goto evfehler
Was nun, wenn jemand rein zufällig die * taste drückt?
Es soll halt so sein, dass nur j oder n akzeptiert wird und jede andere Taste, oder auch nur die Enter Taste gedrückt wird, das Script nicht weiter macht?
Vielen Dank
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 172176
Url: https://administrator.de/forum/falsche-eingabe-bei-set-p-wie-pruefen-172176.html
Ausgedruckt am: 23.12.2024 um 19:12 Uhr
15 Kommentare
Neuester Kommentar
Hallo Kalamari!
Etwa so:
Grüße
bastla
P.S.: Bitte verwenden ...
Etwa so:
:Eingabe
set "einverstanden="
set /p einverstanden=
if /I "%einverstanden%"=="j" goto start
if /I "%einverstanden%"=="n" goto nichteinverstanden
echo\
echo Bitte nur j oder n eingeben!
goto :Eingabe
Was nun, wenn jemand rein zufällig die * taste drückt?
... ist mir allerdings nicht so ganz klar ...Grüße
bastla
P.S.: Bitte verwenden ...
@bastla
weil ich im falschen Film war? Vergiss es.
Aber man könnte die Zeile 03 abändern in
Nachtrag: Und dann sollte man als Sprungmarken keine Labels verwenden, die auch z. B. als Batch-Parameter oder Programme existieren können wie z. B. "start". Irgendwann für das nur zu Problemen.
weil ich im falschen Film war? Vergiss es.
Aber man könnte die Zeile 03 abändern in
set /p einverstanden=Einverstanden: (J / N)
Nachtrag: Und dann sollte man als Sprungmarken keine Labels verwenden, die auch z. B. als Batch-Parameter oder Programme existieren können wie z. B. "start". Irgendwann für das nur zu Problemen.
peinlich ...
Grüße OKIDOKI
PS: Wie hält man die Unwissenheit von uns bloß aus ...
:verz1
ECHO Verzeichnis wechseln [w] oder Rootverzeichnis [r] ?
ECHO\
SET /P M= w/r, dann ENTER:
IF %M%==r GOTO :weiter
IF %M%==w GOTO :ver_loop
echo\
echo Bitte nur r oder w eingeben!
goto :verz1
:ver_loop
ECHO Directory so eingeben z.B.: hauptverzeichnis
set /p var_a=cd
>>".\config.txt" ECHO %var_a%
:verz
ECHO Weiter wechseln [w] oder Zielverzeichnis [z] erreicht ?
ECHO\
SET /P M= Auswahl w/z , dann ENTER:
IF %M%==z GOTO :weiter
IF %M%==w GOTO :ver_loop
echo\
echo Bitte nur w oder z eingeben!
goto :verz
:weiter
:: hier gehts weiter
Grüße OKIDOKI
PS: Wie hält man die Unwissenheit von uns bloß aus ...
Hallo OKIDOKI!
Wenn es nicht auf beiden Seiten des "
Hier wurde auch gleich noch für eine ev klemmende Shift-Taste vorgesorgt, sodass auch die Eingabe von R akzeptiert wird ...
Es würde sich übrigens auch Zeile 13 noch eine Überprüfung der Eingabe anbieten ...
Grüße
bastla
Wenn es nicht auf beiden Seiten des "
==
" Werte gibt, geht das daneben - daher etwa:if /i "%M%"=="r" goto :weiter
Es würde sich übrigens auch Zeile 13 noch eine Überprüfung der Eingabe anbieten ...
Grüße
bastla