Jak uzyskać bieżącą datę i godzinę w wierszu poleceń systemu Windows, w odpowiednim formacie do użycia w nazwie pliku?
Aktualizacja: Teraz, kiedy jest rok 2016, użyję do tego PowerShell, chyba że istnieje naprawdę przekonujący powód zgodny z poprzednimi wersjami, szczególnie ze względu na problem z ustawieniami regionalnymi przy korzystaniu zdate
. Zobacz @ npocmaka'shttps://stackoverflow.com/a/19799236/8479
Co to jest instrukcja (-y) wiersza poleceń systemu Windows, której mogę użyć, aby uzyskać bieżącą datę i godzinę w formacie, który mogę umieścić w nazwie pliku?
Chcę mieć plik .bat, który zapina katalog w archiwum z aktualną datą i czasem jako częścią nazwy, na przykład,Code_2008-10-14_2257.zip
. Czy mogę to zrobić w prosty sposób, niezależnie od ustawień regionalnych maszyny?
Nie mam nic przeciwko formatowi daty, najlepiej, że będzie to rrrr-mm-dd, ale wszystko jest w porządku.
Do tej pory mam to, co na mojej maszynie mi dajeTue_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
Mogę z tym żyć, ale wydaje się to trochę niezgrabne. Najlepiej byłoby być krótszym i mieć wspomniany wcześniej format.
Używam Windows Server 2003 i Windows XP Professional. Nie chcę instalować dodatkowych narzędzi, aby to osiągnąć (chociaż zdaję sobie sprawę, że istnieją takie, które będą ładnie formatować datę).