Как мне сделать так, чтобы set /a X=1, 1 равнялся "Картофель"?

Как мне сделать так, чтобы set /a X=1, 1 равнялся "Картофель"?

Так что я спрашиваю об этом не потому, что это важная информация или что-то в этом роде, просто мне нравится программировать с помощью пакетных скриптов, когда мне скучно и я хочу создать «персонального помощника», который открывал бы приложения для меня, так что это немного облегчило бы мне жизнь, вместо того чтобы искать их на моем захламленном компьютере.

Я хотел включить возможность выбора /c MF /m /n Male или Female, чтобы я мог отправить его своим друзьям, чтобы они тоже им пользовались, но у меня не получилось заставить это работать правильно, так как %gender% получал значение 0 вместо M или F.

Я пробовал использовать set /p, но мне бы хотелось узнать, есть ли способ использовать set, чтобы использовать слова вместо цифр, спасибо!

(Вот что я написал, на случай, если вам это понадобится. Я знаю, что это может показаться простым или легким для того, кто изучал это, но я делаю это просто как хобби и начинающий «программист»)

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

решение1

Ладно.. Ладно.. Я понял. Ты учишься (что РЕАЛЬНО КРУТО)

  • Исправлено несколько синтаксических ошибок. Пожалуйста, посмотрите, что я сделал иначе, чем вы.
  • Метод, который работает для перехода от «1/2» к «мужчина/женщина» set /a.ТОЛЬКО ДЛЯ МАТЕМАТИКИ.
  • Вам не нужны все эти скобки.
  • Каждый раз, когда вы оцениваете переменную в пакете, заключайте обе стороны в кавычки. if "bob"=="%myname%" echo Meh namez bob. Если по какой-то причине ваша переменная пуста, ваш пакетный файл покажет вам средний палец и завершит работу.

Несколько способов сделать это ЕЩЕ ЛУЧШЕ!

  • Использовать%ПрофильПользователя%\SomeDangDirдля ваших "сохраненных файлов". Сейчас они падают туда, где находится текущий каталог.
  • Выясните, как поместить пол, имя пользователя и все остальное в ОДИН И ТОТ ЖЕ ФАЙЛ и вытащить его обратно. Это будет вызов, так как есть 100 различных способов сделать это.

`

@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

Удачи! :)

Связанный контент