Nasıl bir dosya adı kullanarak uygun bir biçimde Windows komut satırında geçerli datetime almak için?
Bir dosya içine koyabileceğim bir biçimde geçerli datetime almak için kullanabileceğim bir Windows komut satırı deyimi(ler) nedir?
Bir sahip olmak istiyorum .yarasa bu örnek için geçerli tarihle bir arşiv ve adının bir parçası olarak zaman,, Code_2008-10-14_2257.zip
bir dizin fermuarlar kadar dosya. Bunu yapmak için herhangi bir kolay yolu var, makinenin bölgesel ayarları bağımsız?
Gerçekten yyyy-aa-gg olur ideal tarih biçimi hakkında umurumda değil, ama her şey basit iyi.
Åžimdiye kadar benim makinede bana Tue_10_14_2008_230050_91
verir bu, var:
rem Get the datetime in a format that can go in a filename.
set _my_datetime=Úte%_%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
Bunu kabul edebilirim, ama biraz hantal görünüyor. İdeal özlü ve biçimi daha önceden söylemiş olurdu.
Windows Server 2003 ve Windows XP Professional kullanıyorum. Bunu başarmak için ek araçlar güzel tarih biçimlendirme yapacak kişiler var farkındayım ancak) yüklemek istemiyorum.
CEVAP
Windows Batch File (.bat) to get current date in MMDDYYYY format. bkz
@echo off
For /f "tokens=2-4 delims=/ " %%a in ('date /t') do (set mydate=%%c-%%a-%%b)
For /f "tokens=1-2 delims=/:" %%a in ('time /t') do (set mytime=%%a%%b)
echo %mydate%_%mytime%
Eğer 24 saat/askeri biçimde zaman isterseniz, hat İÇİN: değiştirebilirsiniz
For /f "tokens=1-2 delims=/:" %%a in ("%TIME%") do (set mytime=%%a%%b)
C:>.\tarih.bat< / ^ br . 2008-10-14_0642
Eğer Tarihi Bölge gün/ay sipariş bağımsız olarak isterseniz kullanabilirsiniz "os" ISO sırada olduğu bir kaynak gibi . LocalDateTime ALMAK WMIC
@echo off
for /F "usebackq tokens=1,2 delims==" %%i in (`wmic os get LocalDateTime /VALUE 2^>NUL`) do if '.%%i.'=='.LocalDateTime.' set ldt=%%j
set ldt=%ldt:~0,4%-%ldt:~4,2%-%ldt:~6,2% %ldt:~8,2%:%ldt:~10,2%:%ldt:~12,6%
echo Local date is [%ldt%]
C:>test.cmd< / ^ br . Yerel tarih.[2012-06-19 10:23:47.048]
EDİT: Saati ilk olarak, söz konusu talep tarihi eklendi EDİT: Bölge-bağımsız bir varyasyon WMIC . kullanılarak eklendi
Nasıl Windows komut satırında boş bir ...
Nasıl tam yol kullanarak bir JavaScrip...
Nasıl Windows Powershell içinde geçerl...
Nasıl bir sorgu dizesi kullanarak Kapi...
Nasıl Windows toplu iş komut yolunu al...