Güncelleme: Şimdi 2016 için, özellikle bölgesel ayarlar sorunu nedeniyle, gerçekten geriye dönük uyumlu bir neden olmadığı sürece PowerShell'i kullanacağım date
. @ Npocmaka'nın https://stackoverflow.com/a/19799236/8479 adresine bakın
Geçerli datetime'ı dosya adına koyabileceğim bir biçimde almak için kullanabileceğim Windows komut satırı ifadeleri nedir?
Örneğin, adın bir parçası olarak geçerli tarih ve saat ile bir arşive bir dizini fermuarlar bir .bat dosyası istiyorum Code_2008-10-14_2257.zip
. Makinenin bölgesel ayarlarından bağımsız olarak bunu yapmanın kolay bir yolu var mı?
Tarih formatını gerçekten önemsemiyorum, ideal olarak yyyy-aa-gg olurdu, ancak basit bir şey iyidir.
Şimdiye kadar aldım, makinemde bana 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
Bununla yaşayabilirim, ama biraz tıknaz görünüyor. İdeal olarak, daha kısa ve daha önce bahsedilen biçime sahip olurdu.
Windows Server 2003 ve Windows XP Professional kullanıyorum. Bunu başarmak için ek araçlar yüklemek istemiyorum (güzel tarih biçimlendirmesi yapacak bazı olduğunu fark etsem de).
[datetime]::now.tostring("yyyy-MM-dd")