gizmofr
Goto Top

BAT FINDSTR Eingabe prüfen

Guten Morgen, seit Stunden sitze ich nun vor diesen Problem, und Google habe ich auch schon gefragt ,-)
Zur Info, ich bin ein Anfänger was was Batch betrifft...

Also ich möchte eine variable abfragen und dann prüfen ob sie mit einem "\" Backslash endet.

Dafür habe ich folgendes versucht:


echo Bitte geben Sie den Pfad zu xxx ein.

:vmvi

set /p vmvi=

echo %vmvi%|findstr xyz\> "\">nul
if not errorlevel 1 goto weiter

echo Bitte den ganzen Pfad mit \ am Ende eingeben !

goto vmvi

:weiter

Leider funktioniert das ganz und garnicht!!


HILFE!!!

Content-Key: 142857

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

Printed on: April 18, 2024 at 07:04 o'clock

Member: bastla
bastla May 15, 2010 at 10:13:24 (UTC)
Goto Top
Hallo gizmoFR und willkommen im Forum!

Wenn Du nur wissen willst, ob die Eingabe einen abschließenden "\" aufweist, würde auch ein
if "%vmi:~-1%"=="\" goto :weiter
genügen.

Falls Du das aber tatsächlich per "findstr" machen wolltest, dann:
echo %vmi%|findstr /e "\\">nul && goto :weiter
Da der "\" für "findstr" eine besondere Bedeutung hat, muss durch das Voranstellen (wird als "escapen" oder "maskieren" bezeichnet) eines weiteren "\" deutlich gemacht werden, dass tatsächlich das Zeichen "\" gemeint ist.
Ganz nebenbei: Das "echo" mit der Aufforderung zur Eingabe vorweg könntst Du auch einsparen:
set /p vmi=Bitte geben Sie den Pfad zu xxx ein: 
Grüße
bastla
Member: gizmoFR
gizmoFR May 15, 2010 at 11:54:54 (UTC)
Goto Top
Vielen Dank für diese schnelle und ausfürliche Antwort!