Я пытаюсь передать имя файла другому пакетному файлу из пакетного файла, и второй пакетный файл выдает мне «Отказано в доступе», когда я пытаюсь открыть его.
Я запускаю функцию, которая выглядит примерно так:
BATCH1.BAT
set CUR_YYYY=%date:~10,4%
set CUR_MM=%date:~4,2%
set CUR_DD=%date:~7,2%
set CUR_HH=%time:~0,2%
if %CUR_HH% lss 10 (set CUR_HH=0%time:~1,1%)
set CUR_NN=%time:~3,2%
set CUR_SS=%time:~6,2%
set CUR_MS=%time:~9,2%
set DIRECTORYFILENAME=%CUR_YYYY%%CUR_MM%%CUR_DD%-%CUR_HH%%CUR_NN%%CUR_SS%
cd \
dir /a /s /b /o:gn > \path\%DIRECTORYFILENAME%.dr
pause
call batch2.bat
Я знаю, что переменная передается при выполнении из-за следующего скрипта:
BATCH2.BAT
echo with DIRECTORYFILENAME=%DIRECTORYFILENAME%
call for /F "tokens=*" %%I in (%DIRECTORYFILENAME%.dr) do (
FCIV -both "%%I" >> %DIRECTORYFILENAME%.log)
печатает переменную, но не позволяет мне открыть рассматриваемый файл с ошибкой: Access Denied.
EDIT Когда другой пакетный файл открывается независимо, он часто зависает до тех пор, пока не будет нажата комбинация клавиш Ctrl- C, а затем введен «N». (Если это важно)