Como posso definir /a X=1, 1 igual a "Batata"?

Como posso definir /a X=1, 1 igual a "Batata"?

Então não estou perguntando isso porque é uma informação vital ou algo assim, eu só gosto de programar com script em lote quando fico entediado e queria criar um "assistente pessoal" que abrisse aplicativos para mim, então tornaria minha vida um pouco mais fácil. mais fácil em vez de pesquisar no meu computador bagunçado.

Eu queria incluir uma opção /c MF /m /n Masculino ou Feminino, para poder enviá-lo aos meus amigos para usá-lo também, mas não consegui fazê-lo funcionar corretamente, pois% gênero% receberia 0 valor em vez de M ou F.

Tentei usar set /p mas gostaria de saber se existe uma maneira de usar set para usar palavras em vez de números, obrigado!

(Aqui está o que escrevi caso você precise, eu sei que pode parecer simples ou fácil para alguém que estudou isso, mas eu apenas faço isso como um hobbie e "programador novato")

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 ----------------------------

Responder1

OK.. OK.. Entendi. Você está aprendendo (o que é MUITO LEGAL)

  • Vários erros de sintaxe corrigidos. Por favor, veja o que eu fiz de diferente de você.
  • Um método que funciona para passar de “1/2” para “masculino/feminino”. set /aéSÓ PARA MATEMÁTICA.
  • Você não precisa de todos esses parênteses.
  • Sempre que você estiver avaliando uma variável em lote, cite ambos os lados. if "bob"=="%myname%" echo Meh namez bob. Se por algum motivo sua variável estiver vazia, seu arquivo em lote lhe mostrará o dedo e sairá.

Algumas maneiras de tornar isso ainda melhor!

  • Usar%UserProfile%\SomeDangDirpara seus "salvar arquivos". No momento, eles caem onde quer que esteja o diretório atual.
  • Descubra como colocar gênero, nome de usuário e qualquer outra coisa no MESMO ARQUIVO e retire-o novamente. Este será um desafio com 100 maneiras diferentes de realizá-lo.

`

@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

Boa sorte! :)

informação relacionada