如何在Windows命令行上以合适的格式获取当前日期/时间以在文件/文件夹名称中使用? [英] How do I get current date/time on the Windows command line in a suitable format for usage in a file/folder name?
问题描述
更新:现在是2016年,除非有确实令人信服的向后兼容原因,否则我将使用PowerShell,特别是由于使用date
的区域设置问题.参见@npocmaka的 https://stackoverflow.com/a/19799236/8479
Update: Now that it's 2016 I'd use PowerShell for this unless there's a really compelling backwards-compatible reason for it, particularly because of the regional settings issue with using date
. See @npocmaka's https://stackoverflow.com/a/19799236/8479
什么是Windows命令行语句,我可以用可以放入文件名的格式来获取当前日期时间?
What's a Windows command line statement(s) I can use to get the current datetime in a format that I can put into a filename?
我想要一个.bat文件,该文件将目录压缩到存档中,并将当前日期和时间作为名称的一部分,例如Code_2008-10-14_2257.zip
.有什么简单的方法可以做到这一点,而与计算机的区域设置无关吗?
I want to have a .bat file that zips up a directory into an archive with the current date and time as part of the name, for example, Code_2008-10-14_2257.zip
. Is there any easy way I can do this, independent of the regional settings of the machine?
我不太在乎日期格式,理想情况下是yyyy-mm-dd,但是任何简单的方法都可以.
I don't really mind about the date format, ideally it'd be yyyy-mm-dd, but anything simple is fine.
到目前为止,我已经知道了,它在我的计算机上为我提供了Tue_10_14_2008_230050_91
:
So far I've got this, which on my machine gives me Tue_10_14_2008_230050_91
:
rem Get the datetime in a format that can go in a filename.
set _my_datetime=%date%_%time%
set _my_datetime=%_my_datetime: =_%
set _my_datetime=%_my_datetime::=%
set _my_datetime=%_my_datetime:/=_%
set _my_datetime=%_my_datetime:.=_%
rem Now use the timestamp by in a new ZIP file name.
"d:\Program Files\7-Zip\7z.exe" a -r Code_%_my_datetime%.zip Code
我可以忍受这个,但是似乎有点笨拙.理想情况下,它会更简短并且具有前面提到的格式.
I can live with this, but it seems a bit clunky. Ideally it'd be briefer and have the format mentioned earlier.
我正在使用Windows Server 2003和Windows XP Professional.我不想安装其他实用程序来实现此目的(尽管我知道有些实用程序可以很好地格式化日期).
I'm using Windows Server 2003 and Windows XP Professional. I don't want to install additional utilities to achieve this (although I realise there are some that will do nice date formatting).