Ich frage das also nicht, weil es wichtige Informationen wären oder so, sondern weil ich einfach gern mit Batch-Skripten programmiere, wenn mir langweilig ist, und ich einen „persönlichen Assistenten“ erstellen wollte, der Apps für mich öffnet und mir so das Leben ein bisschen leichter macht, anstatt auf meinem unordentlichen Computer suchen zu müssen.
Ich wollte die Auswahlmöglichkeit /c MF /m /n Männlich oder Weiblich einschließen, damit ich sie meinen Freunden schicken kann, damit sie sie auch verwenden können, aber ich habe es nicht richtig zum Laufen gebracht, da %gender% den Wert 0 statt M oder F erhielt.
Ich habe versucht, „set /p“ zu verwenden, würde aber gerne wissen, ob es eine Möglichkeit gibt, mit „set“ Wörter statt Zahlen zu verwenden. Danke!
(Hier ist, was ich geschrieben habe, falls Sie es brauchen. Ich weiß, dass es für jemanden, der das studiert hat, einfach oder leicht aussehen mag, aber ich mache das nur als Hobby und Anfänger-„Programmierer“)
echo Username
set /p username=
echo.
echo.
echo.
echo Gender
choice /c 12 /m /n 1: Male, 2: Female
if %errorlevel%==1 (set /a gender=1)
if %errorlevel%==2 /set /a gender=2)
echo.
echo.
echo.
echo Thanks, we will start to create a profile for you...
timeout /t 2 /nobreak >nul
cls
echo Creating profile...
cls
echo Please, insert the name the filesaves will have.
set /p savefile=
timeout /t 1 /nobreak >nul
cls
echo ----------------------------
echo Starting up...
(
echo %username%
)>%savefile%user.sgf
echo %username%
echo ----------------------------
timeout /t 2 /nobreak >nul
echo 50%
timeout /t 1 /nobreak >nul
(
echo %gender%
)>%savefile%gender.sgf
echo %gender%
echo ----------------------------
Antwort1
OK... OK... ich verstehe. Du lernst (was WIRKLICH COOL ist)
- Mehrere Syntaxfehler behoben. Bitte schauen Sie, was ich anders gemacht habe als Sie.
- Eine Methode, die funktioniert, um von „1/2“ zu „männlich/weiblich“ zu gelangen,
set /a
istNUR FÜR MATHE. - Sie brauchen nicht alle diese Klammern.
- Setzen Sie bei der Auswertung einer Variablen im Stapelbetrieb immer beide Seiten in Anführungszeichen.
if "bob"=="%myname%" echo Meh namez bob.
Wenn Ihre Variable aus irgendeinem Grund leer ist, zeigt Ihnen Ihre Stapelverarbeitungsdatei den Mittelfinger und wird beendet.
Einige Möglichkeiten, es NOCH BESSER zu machen!
- Verwenden%Benutzerprofil%\SomeDangDirfür Ihre „Speicherdateien“. Momentan werden sie dort abgelegt, wo sich das aktuelle Verzeichnis gerade befindet.
- Finden Sie heraus, wie Sie Geschlecht, Benutzername und alles andere in DIESELBE DATEI einfügen und wieder herausziehen können. Das wird eine Herausforderung mit 100 verschiedenen Möglichkeiten, dies zu erreichen.
`
@echo off
SetLocal
echo Input Username:
set /p username=
echo.
echo Input Gender
choice /c 12 /m "1: Male, 2: Female"
if "%errorlevel%"=="1" (set gender=male) else (set gender=female)
echo.
echo.
echo username=%username%
echo gender=%gender%
echo Thanks, we will start to create a profile for you...
timeout /t 2 /nobreak >nul
cls
echo Creating profile...
timeout /t 1 /nobreak >nul
cls
echo Please, insert the name the filesaves will have:
set /p savefile=
cls
echo ----------------------------
echo Starting up...
echo %username%>%savefile%user.sgf
echo %username%
echo ----------------------------
timeout /t 2 /nobreak >nul
echo 50%
timeout /t 1 /nobreak >nul
echo %gender%>%savefile%gender.sgf
echo %gender%
echo ----------------------------
EndLocal
Viel Glück! :)