imho.ws |
|
02.06.2005, 19:03 | # 1 |
::VIP::
Регистрация: 15.05.2005
Адрес: Питер
Сообщения: 1 194
|
Дата и время в командной строке
Такой вопрос, если дата выводится в формате: День недели Дата. Например Thu 02/06/2005. можно ли как-нибудь убрать день недели при выводе из bat'файла. %date% выводит вместе с днем недели...
__________________
Чтобы воля стала действующим началом, тело должно быть совершенным. |
02.06.2005, 21:41 | # 4 | ||
СуперМод
IMHO Консультант 2005-2009 Регистрация: 14.08.2002
Адрес: Московская ПЛ, ракетный отс
Пол: Male
Сообщения: 14 418
|
Цитата:
Код:
IF "%UserName%"=="VasyaPupkin" CALL DoSomething.bat Цитата:
__________________
Не засоряйте форум "спасибами"! Для выражения благодарности существуют ПС и репутация! Соблюдайте Правила! Распространенье наше по планете Особенно заметно вдалеке: В общественном парижском туалете Есть надписи на русском языке В. Высоцкий Последний раз редактировалось Borland; 02.06.2005 в 22:10. |
||
03.06.2005, 21:08 | # 6 |
::VIP::
Регистрация: 15.05.2005
Адрес: Питер
Сообщения: 1 194
|
А можно как-нибудь убрать лишний пробел перед временем? Например, когда количество часов 2 знака (10-23), то в выходном файле один пробел, а когда 1 знак (0-9) в выходном файле 2 пробела, видимо один пробел из-за того, что должен писаться ноль (00-09), но он не пишется, как можно избавиться от этого пробела?
__________________
Чтобы воля стала действующим началом, тело должно быть совершенным. |
15.01.2014, 21:11 | # 8 |
СуперМод
IMHO Консультант 2005-2009 Регистрация: 14.08.2002
Адрес: Московская ПЛ, ракетный отс
Пол: Male
Сообщения: 14 418
|
Решил поделиться своим решением.
Как-то для целей резервного копирования мне понадобились дата и время в имени файла в формате "YYYYMMDD_HHMMSS", причём без пробелов. Для решения задачи была применена следующая конструкция: Код:
if "%TIME:~0,1%"==" " ( set "DTSTRING=%DATE:~6,4%%DATE:~3,2%%DATE:~0,2%_0%TIME:~1,1%%TIME:~3,2%%TIME:~6,2%" ) else ( set "DTSTRING=%DATE:~6,4%%DATE:~3,2%%DATE:~0,2%_%TIME:~0,2%%TIME:~3,2%%TIME:~6,2%" ) Слегка громоздко, зато надёжно.
__________________
Не засоряйте форум "спасибами"! Для выражения благодарности существуют ПС и репутация! Соблюдайте Правила! Распространенье наше по планете Особенно заметно вдалеке: В общественном парижском туалете Есть надписи на русском языке В. Высоцкий |
01.09.2019, 17:19 | # 9 |
СуперМод
IMHO Консультант 2005-2009 Регистрация: 14.08.2002
Адрес: Московская ПЛ, ракетный отс
Пол: Male
Сообщения: 14 418
|
Добавим получение даты и времени независимо от системных настроек:
Код:
@echo OFF call :GETTIMESTAMP TIMESTAMP echo %TIMESTAMP:~0,4%-%TIMESTAMP:~4,2%-%TIMESTAMP:~6,2% %TIMESTAMP:~8,2%:%TIMESTAMP:~10,2%:%TIMESTAMP:~12,2% pause goto :EOF :GETTIMESTAMP for /f "usebackq tokens=2 delims==" %%A in (`wmic os get LocalDateTime /value`) do set "%~1=%%A" goto :EOF Код:
@echo OFF setlocal EnableDelayedExpansion call :GETUTCTIMESTAMP TIMESTAMP echo %TIMESTAMP% pause goto :EOF :GETUTCTIMESTAMP for /f "usebackq tokens=1,2 delims==" %%A in (`wmic path Win32_UTCTime get year^,month^,day^,hour^,minute^,second /value ^| find "="`) do ( set /a TMPVAL=%%B if !TMPVAL! LSS 10 ( set UTC_%%A=0%%B ) else ( set UTC_%%A=%%B ) ) set %1=%UTC_Year%-%UTC_Month%-%UTC_Day%T%UTC_Hour%:%UTC_Minute%:%UTC_Second%Z goto :EOF
__________________
Не засоряйте форум "спасибами"! Для выражения благодарности существуют ПС и репутация! Соблюдайте Правила! Распространенье наше по планете Особенно заметно вдалеке: В общественном парижском туалете Есть надписи на русском языке В. Высоцкий |