Показать полную графическую версию : Вывод даты в переменную (bat)
rootheaven
08-05-2010, 10:13
Нужно с помощью обычного *.bat взять часть системной даты (число) и поместить в переменную, затем взять вторую часть (месяц) и поместить в другую переменную.
Пробовал с помощью %date% и %path, но либо я делаю что то не так, либо нужно искать другой путь.
Буду благодарен за любые советы. Спасибо.
Petya V4sechkin
08-05-2010, 10:30
Пример (функция GetDate) (http://forum.oszone.net/post-611497.html#post611497)
[решено] Команды в Win (date /T). Выбор формата даты (http://forum.oszone.net/post-1054682.html#post1054682)
[решено] Переменная Дня недели (http://forum.oszone.net/post-1094734.html#post1094734)
[решено] Проверить наличие файла с текущей датой (http://forum.oszone.net/thread-138273.html)
rootheaven
08-05-2010, 16:14
Спасибо за ссылки, прочтенное натолкнуло на мысль:)
set day=%date:~0,2%
set month=%date:~3,2%
KopBuH91
23-07-2017, 18:49
Универсальный способ, работающий на английской и русской локализациях, через WMI, начиная от XP и до Windows 10:
:: Установка текущей даты
FOR /F "tokens=2 delims==." %%i in ('WMIC OS GET LOCALDATETIME /VALUE') DO (SET NOW=%%i)
SET NOW=%NOW:~0,-10%.%NOW:~4,-8%.%NOW:~6,-6%_%NOW:~8,-4%.%NOW:~10,-2%.%NOW:~12%
ECHO %NOW%
KopBuH91, не в каждой ОC имеется WMIC
KopBuH91
23-07-2017, 19:32
NickM, ну, я тестировал на WinXP SP3 x86, WinXP SP2 x64, Win7 (x86/x64), Win10 (x64) (не PE, конечно) - работает
NickM, ну, я тестировал на WinXP SP3 x86, WinXP SP2 x64, »
Не просто в «WinXP», а именно в тех редакциях, в которых wmic.exe наличествует.
Сам по себе способ получения даты/времени посредством wmic.exe известен как раз с тех самых времён, равно как и ограничения на него, не раз упоминался и здесь.
© OSzone.net 2001-2012
vBulletin v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.