Я пытаюсь взять некоторые пользовательские переменные, определенные пользователем, чтобы решить, следует ли входить в цикл и выполнять копирование и переименование с последующим удалением исходного файла, поскольку он больше не понадобится.
set /p multiTune="Does your tune file need to be shared with multiple
Element sequences? (y/n) "
Echo Multi Tune is %multiTune%
if "%multiTune%"=="y" (set /p tuneCount="How many sequences will need to share your tune file? ")
Echo Tune count is %tuneCount%
pause
if "%multiTune%"=="y" (SET /p tuneName="Enter the file letter/number combination for the R quant of your tune file. ") else (@ECHO The user specified there is no need for a second tune.)
Echo Tune Name is %tuneName%
pause
if "%multiTune%"=="y" (SET /a tuneCount+=1) else(set /a tuneCount-=tuneCount)
Echo Tune count is now %tuneCount%
pause
:loop
if "%tuneCount%"=="0" goto exitloop
Set /p seqNumber="Enter the number for one of the sequences."
copy %tuneName%.D.pdf "S%seqNumber%-TUN1_%tuneName%.D.pdf"
echo %tuneName%.D.pdf renamed to S%seqNumber%-TUN1_%tuneName%.D.pdf
pause
Set /a tuneCount-=1
if "%tuneCount%"=="1" DEL "%tuneName%.D.pdf"
if "%tuneCount%"==1 goto exitloop
Echo %tuneCount%
pause
goto loop
:exitloop
Все эхо-сигналы и паузы предназначены только для тестирования, чтобы убедиться, что у меня правильные значения в моих переменных.Пакетный файл прекрасно работает с переменными, содержащими правильные строки и значения вплоть до строки:
if "%multiTune%"=="y" (SET /a tuneCount+=1) else(set /a tuneCount-=tuneCount)
Файл говорит, что что-то неожиданно и закрывается в этой точке, поэтому я не получил шанс выяснить, еслиЗакрученная часть даже работает.Точка +1 такова, что он входит в цикл и выполняет команды до достижения 1 и пропускает цикл, если он равен 0.
Я прочитал кучу информации о setlocal delayedexpansion и использую! 'вокруг переменных вместо%.Я не уверен, как реализовать это или это относится к моей проблеме вообще.Я знаю, что, возможно, есть более простой способ сделать утверждения if, но я новичок, и для меня это был самый простой способ понять это, поскольку я учился на лету методом проб и ошибок, и все, что вы видите, этоРезультаты одного дня обучения.
Любая помощь будет высоко ценится.Я старался быть максимально подробным о том, что я пытаюсь сделать, но если у вас есть какие-либо вопросы, я сделаю все возможное, чтобы ответить.