Как перенаправить вывод в файл, именем которого являются текущие дата и время? - PullRequest
9 голосов
/ 30 сентября 2010

Я бы хотел перенаправить вывод команды (в командной строке Windows) в файл, именем которого являются текущие дата и время. Например:

my_path\mysqldump.exe my_database_name > auto_generated_file_name

где auto_generated_file_name должно быть что-то вроде 2010_09_30___11_41_58.txt.

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

Какой самый простой способ добиться этого?

Ответы [ 2 ]

8 голосов
/ 30 сентября 2010

Следующая команда создает пустой файл с ожидаемым именем файла:

> type nul > %date:~10,4%_%date:~4,2%_%date:~7,2%__%time:~0,2%_%time:~3,2%_%time:~6,2%.txt

> dir /b
2010_09_29__22_12_44.txt

Вы можете использовать деталь после type nul > вместо вашего auto_generated_file_name.

3 голосов
/ 30 сентября 2010

Здесь есть хорошее решение , и оно почти соответствует вашему примеру форматирования:

set dd = %date% %Time% 
my_command > MyFile__%dd:~0,2%_%dd:~3,2%_%dd:~6,4%___%dd:~11,2%_%dd:~14,2%.txt 

Вывод: «MyFile__22_05_2009__6_20.txt»

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...