Wie mit Choice LW-Buchstaben auswählen
Hallo Freunde der gepflegten Batch-Konversation,
ich möchte mittels Choice einen LW-Buchstaben eingeben lassen:
Leider gibt Choice Zahlen im %errorlevel% zurück.
Hat jemand eine gute Idee, die Zahlen einfach in den entsprechenden Buchstaben zu wandeln?
So hat es leider nicht geklappt:
Vielen Dank!
P.S. man
ich möchte mittels Choice einen LW-Buchstaben eingeben lassen:
Leider gibt Choice Zahlen im %errorlevel% zurück.
Hat jemand eine gute Idee, die Zahlen einfach in den entsprechenden Buchstaben zu wandeln?
So hat es leider nicht geklappt:
set drives=ABCDEFGHIJKLMNOPQRSTUVWXYZ
choice /C %drives% /M "Laufwerksbuchstaben auf den gemapped werden soll angeben:"
set /A nr=%errorlevel%-1
set drive=%%drives:~%nr%,1%%
Vielen Dank!
P.S. man
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 196215
Url: https://administrator.de/contentid/196215
Ausgedruckt am: 20.11.2024 um 13:11 Uhr
3 Kommentare
Neuester Kommentar
Hallo joemouth,
Du kannst auch noch ein Leerzeichen in der Variablen
Grüße
rubberman
call
ist der Trick bei dieser Art verschachtelter Variablen.Du kannst auch noch ein Leerzeichen in der Variablen
drives
voran stellen, dann ersparst du dir die zusätzliche Berechnung.@echo off &setlocal
set "drives= ABCDEFGHIJKLMNOPQRSTUVWXYZ"
choice /N /C %drives% /M "Laufwerksbuchstaben auf den gemapped werden soll angeben: "
call set "drive=%%drives:~%errorlevel%,1%%"
echo %drive%
pause
Grüße
rubberman
moin,
ist schick gelöst mit dem Leerschritt.
ein Variante mit Forschleife:
PS.
Joe, setz bitte noch die Frage auf gelöst.
Gruß Phil
ist schick gelöst mit dem Leerschritt.
ein Variante mit Forschleife:
set "drives= ABCDEFGHIJKLMNOPQRSTUVWXYZ"
<nul set /p "=.Laufwerksbuchstaben auf den gemappt werden soll angeben: "
cmd /u /c "echo %drives%"|findstr "."
for /f %%i in ('choice /n /c %drives%') do set "Drive=%%i" &echo Laufwerk = %%i
PS.
Joe, setz bitte noch die Frage auf gelöst.
Gruß Phil