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-Key: 116612

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

Printed on: April 25, 2024 at 05:04 o'clock

Member: bastla
bastla May 22, 2009 at 22:08:32 (UTC)
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
Member: anokkona
anokkona May 23, 2009 at 08:23:36 (UTC)
Goto Top
Super vielen Dank!

eine Frage, für was steht das

& setlocal

bei @echo off ?


LG Anok
Member: bastla
bastla May 23, 2009 at 08:40:49 (UTC)
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
Member: anokkona
anokkona May 23, 2009 at 17:15:56 (UTC)
Goto Top
Aha, ok vielen Dank.

LG Anok