Я пытаюсь сделать командный файл (скажем, a.bat), который при запуске создает еще один пакетный файл (скажем, b.bat). Теперь я использую b.bat переименовать определенный код file.The для переименования,Пакетный файл для запуска другого командного файла
@echo off
SETLOCAL ENABLEDELAYEDEXPANSION
SET "folder=path\to the\file"
::Action
CD /d "%folder%"
FOR %%F IN ("old filename") DO (
MOVE "%%F" "new filename"
)
Код в a.bat писать код в b.bat есть
@echo off
set [email protected] off
set VarTwo=SETLOCAL ENABLEDELAYEDEXPANSION
set VarThree=::Action
set VarFour=CD /d "path\to the\file"
set VarFive=FOR %%F IN ("old filename") DO (
set VarSix= MOVE "%%F" "new filename"
set VarSeven=)
echo %VarOne% >> %Output%\test.bat
echo %VarTwo% >> %Output%\test.bat
echo %VarThree% >> %Output%\test.bat
echo %VarFour% >> %Output%\test.bat
echo %VarFive% >> %Output%\test.bat
echo %VarSix% >> %Output%\test.bat
echo %VarSeven% >> %Output%\test.bat
Теперь проблема заключается в том, что когда b.bat генерируется именно так,
@echo off
SETLOCAL ENABLEDELAYEDEXPANSION
SET "folder=path\to the\file"
::Action
CD /d ""
FOR %F IN ("old filename") DO (
MOVE "%F" "new filename"
)
папку%% и% от %% F ушел. Так как бы я понял? Помоги мне, пожалуйста.
использование 4% s -> 'set VarFive = FOR %%%% F IN (" old filename ") DO (' – npocmaka
Вы должны удвоить каждый '%' –
Спасибо вам большое обоим моим брозам. – user2717098