Подтвердить что ты не робот

Получить дату в формате YYYYMMDD в пакетном файле Windows

Мне нужно получить дату в формате YYYYMMDD в пакетном файле.

Я делаю это, используя:

set mydate=%date:~6,4%%date:~3,2%%date:~0,2%
echo %mydate%

Мне нужно, чтобы он был согласованным по всей системе, даже при изменении настроек времени.

Просьба сообщить.

4b9b3361

Ответ 1

Если после прочтения других вопросов и просмотра ссылок, упомянутых в разделах комментариев, вы все равно не можете это выяснить, продолжайте читать.

Прежде всего, если вы идете не так, это смещение.

Это должно выглядеть примерно так...

set mydate=%date:~10,4%%date:~6,2%/%date:~4,2%
echo %mydate%

Если бы дата была Tue 12/02/2013, она бы отображалась как 2013/02/12. чтобы убрать косые черты, код будет больше похож на set mydate=%date:~10,4%%date:~7,2%%date:~4,2%, который выведет 20130212

И подсказка для того, чтобы сделать это в будущем, если mydate равен чему-то вроде %date:~10,4%%date:~7,2% или тому подобное, вы, вероятно, забыли тильду (~).

Ответ 2

Вы можете попробовать это! Это должно работать на машинах Windows.

for /F "usebackq tokens=1,2,3 delims=-" %%I IN (`echo %date%`) do echo "%%I" "%%J" "%%K"