синтаксическая ошибка в пакетном файле для создания каталога меток времени - PullRequest
0 голосов
/ 17 августа 2010

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

:: Code begins....
pause
W:
pause
cd W:\VL2000_AMF\AMF_Archive
pause
for /F "tokens=1-4 delims=. " %%i in ('date /t') do (
set Day=%%i
set Month=%%j
set Year=%%k
)
pause
for /F "tokens=1-4 delims=: " %%i in ('time /t') do (
set Hour=%%i
set Minute=%%j
set Second=%%k
)
pause
md %1\%Year%-%Month%-%Day%
pause
:: Code ends....

Ответы [ 2 ]

0 голосов
/ 17 августа 2010

Вы уверены, что ваша дата возвращается как mm.dd.yyyy (разделенные точками и с полями в том порядке, в котором вы ожидаете)? Если языковой стандарт процесса не соответствует ожидаемому, вы можете получить %Day% как что-то вроде 8/17/2010, что заставит md сообщать о синтаксической ошибке при попытке интерпретировать /17 и /2010 как опции.

0 голосов
/ 17 августа 2010

Я использовал следующее в Windows 2000 и 2003, чтобы получить год, месяц и день из выходных данных команды date. К сожалению, у меня больше нет систем XP, чтобы посмотреть, будет ли это работать там.

for /F "tokens=2-4 delims=/ " %%i in ('date /t') do (
echo "Day=%%i"
echo "Month=%%j"
echo "Year=%%k"
)

Каков формат вывода «date / t» и «time / t» в XP?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...