anokkona
Goto Top

eine eingabeaufforderung, mit mindestangabe

Hallo mitteinander

Man kann ja eine eingabeaufforderung wie folgt durchführen, um die eingabe danach als variable gespeichert zu haben:

Set /p var=

und mit:

echo %var%

abrufen.


---> Wie kann ich sagen dass wenn die eingabe nicht aus z.b. 10 Zeichen besteht er zum anfang gehen soll...???


LG Anok

Content-ID: 116612

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

Ausgedruckt am: 22.11.2024 um 10:11 Uhr

bastla
bastla 23.05.2009 um 00:08:32 Uhr
Goto Top
Hallo anokkona!

Etwa so:
@echo off & setlocal

:Eingabe
set Ein=
set /p Ein=Bitte den Wert mit genau 10 Zeichen eingeben: 
echo\
if not defined Ein goto :Eingabe
if "%Ein:~9,1%"=="" goto :Eingabe  
if "%Ein:~10%" neq "" goto :Eingabe  
echo Eingegebener Wert: %Ein%
Grüße
bastla
anokkona
anokkona 23.05.2009 um 10:23:36 Uhr
Goto Top
Super vielen Dank!

eine Frage, für was steht das

& setlocal

bei @echo off ?


LG Anok
bastla
bastla 23.05.2009 um 10:40:49 Uhr
Goto Top
Hallo anokkona!

Vorweg: Das "setlocal" könnte auch in einer eigenen Zeile stehen, aber gewohnheitsmäßig verbinde ich es mit dem ebenfalls gewohnheitsmäßigen "@echo off" ...

Mit "setlocal" werden alle in diesem Batch erstellten oder veränderten Variablen(werte) nach einem "endlocal" (am Ende des Batches wird ein automatisches "endlocal" ausgeführt") einfach wieder "vergessen" - so bleiben im Speicher keine "Reste", die dann beim nächsten Batch ev für Seiteneffekte sorgen könnten.

Grüße
bastla
anokkona
anokkona 23.05.2009 um 19:15:56 Uhr
Goto Top
Aha, ok vielen Dank.

LG Anok