У меня есть пакетный файл, который создает токен-файл формата имени xyz_yyyyddmmhhmmss (добавление метки времени) на основе некоторых условий. Проблема заключается в том, что если файл токена создается с 0:00 до 9:59, временная часть имени файла имеет 5 цифр и 6 цифр в противном случае. От него требуется 6 цифр.Пакетный файл для создания файла с отметкой времени
for /f "tokens=1 delims=/ " %%j in ("%date%") do set d1=%%j
for /f "tokens=2 delims=/ " %%j in ("%date%") do set d2=%%j
for /f "tokens=3 delims=/ " %%j in ("%date%") do set d3=%%j
for /f "tokens=4 delims=/ " %%j in ("%date%") do set d4=%%j
for /f "tokens=1 delims=: " %%j in ("%time%") do set t1=%%j
for /f "tokens=2 delims=: " %%j in ("%time%") do set t2=%%j
for /f "tokens=3 delims=:. " %%j in ("%time%") do set t3=%%j
if exist %1xyz_*.tkn (del %1xyz_*.tkn
dir %1*.txt>%1xyz_%d4%%d2%%d3%%t1%%t2%%t3%.tkn)
if not exist %xyz_*.tkn (dir %1*.txt>%1xyz_%d4%%d2%%d3%%t1%%t2%%t3%.tkn)
Просьба дать ваши данные.
Спасибо!
Вы должны использовать 'для/F "токенов = 1-7 delims = /:.," %% I в ("Дата%%%% времени") делать множество "d1 = %% I" & set "d2 = %% J" и установить "d3 = %% K" и установить "d4 = %% L" и установить "t1 = %% M" и установить "t2 = %% N" и установить "t3 = %% O ",' '; в противном случае при запуске вашего кода очень близко к полуночи и несколько раз читайте '% date%' /% 'time%', вы можете получить неожиданные результаты; обратите внимание, что '% date%' и '% time%' возвращают дату и время в формате в зависимости от ваших настроек локали ... – aschipfl
По возможности вы должны предпочесть решение, которое не зависит от локальных настроек [например, это] (http : //stackoverflow.com/a/18024049/2152082) – Stephan