Як уже зазначалося, аналіз дати та часу корисний лише у тому випадку, якщо ви знаєте формат, який використовується поточним користувачем (наприклад, MM / dd / yy або dd-MM-yyyy, щоб назвати два). Це може бути визначено, але до того моменту, коли ви зробите всі напруження та синтаксичний аналіз, ви все одно опинитесь до ситуації, коли використовується несподіваний формат, і буде потрібно більше налаштувань.
Ви також можете скористатися деякою зовнішньою програмою, яка поверне кулю дати у бажаному форматі, але у неї є недоліки необхідності розповсюдження утиліти з вашим сценарієм / партією.
Існують також пакетні трюки, що використовують годинник CMOS досить сирим способом, але це занадто близько до голих проводів для більшості людей, а також не завжди є бажаним місцем для пошуку дати / часу.
Нижче наведено рішення, яке дозволяє уникнути перерахованих вище проблем. Так, це вносить деякі інші проблеми, але для моїх цілей я виявив це найпростішим, найяснішим, найпотужнішим рішенням для створення позначки дати у .bat файлах для сучасних систем Windows. Це лише приклад, але я думаю, ви побачите, як змінити інші формати дати та / або часу тощо.
reg copy "HKCU\Control Panel\International" "HKCU\Control Panel\International-Temp" /f
reg add "HKCU\Control Panel\International" /v sShortDate /d "yyMMdd" /f
@REM reg query "HKCU\Control Panel\International" /v sShortDate
set LogDate=%date%
reg copy "HKCU\Control Panel\International-Temp" "HKCU\Control Panel\International" /f