pengembangan-web-mp-pd.com

Tanggal saat ini dalam nama file

Saya telah menjadwalkan skrip cadangan yang membuat database dump. Bagaimana saya bisa menambahkan cap waktu tanggal ke nama file?

Saya berbicara tentang Windows dan CMD.

15
Bogdan Gusiev

Dalam perintah Prompt dan file batch, Anda dapat menggunakan %date% dan %time% untuk mengembalikan tanggal dan waktu masing-masing. Tanggal berfungsi dengan baik, tetapi nilai waktu yang dikembalikan berisi titik dua, yang ilegal untuk digunakan dalam nama file, tetapi ada cara untuk menghapusnya.

Gunakan sesuatu seperti:

COPY file.txt file_%time:~0,2%%time:~3,2%%time:~6,2%_%date:~-10,2%%date:~-7,2%%date:~-4,4%.txt

Ini akan menghasilkan nama file seperti file_172215_01062009.txt

Perbarui: Komentar di bawah ini memiliki tikungan menarik pada perintah ini serta beberapa masalah potensial yang dapat Anda hindari.

21
aalaap

Menggunakan %DATE% dan/atau %TIME variabel lingkungan, secara opsional menggantikan karakter yang tidak diizinkan dalam nama file, menggunakan %name:from=to% (%TIME::=% akan menghapus semua titik dua).

 teori "echo% date% 
 2009-06-01 
 
 teori" echo% time% 
 16: 30: 41,46 
 
 teori "echo% time :: =% 
 163052,17 
 teori" echo% time :: =,% 
 16,30,58,68 
 
 Teori "gema cadangan-% tanggal% -% waktu :: = -% .zip 
 Backup-2009-06-01-16 -31-18,82.Zip 
14
user1686

Satu-satunya cara yang dapat diandalkan untuk mendapatkan tanggal yang sesuai apa pun pengaturan regional, adalah solusi dari foxidrive @ https://stackoverflow.com/questions/11037831/filename-timestamp-in-windows-cmd-batch-script =

@echo off
for /f "tokens=2 delims==" %%a in ('wmic OS Get localdatetime /value') do set "dt=%%a"
set "YY=%dt:~2,2%" & set "YYYY=%dt:~0,4%" & set "MM=%dt:~4,2%" & set "DD=%dt:~6,2%"
set "HH=%dt:~8,2%" & set "Min=%dt:~10,2%" & set "Sec=%dt:~12,2%"

set "datestamp=%YYYY%%MM%%DD%" & set "timestamp=%HH%%Min%%Sec%"
set "fullstamp=%YYYY%-%MM%-%DD%_%HH%-%Min%-%Sec%"
echo datestamp: "%datestamp%"
echo timestamp: "%timestamp%"
echo fullstamp: "%fullstamp%"
pause
4
Eric Ouellet

Gunakan% DATE% variabel dalam nama file.

Ada variabel% TIME% juga, tetapi berisi karakter yang tidak diizinkan dalam nama file.

Berikut adalah contoh penulisan baris teks ke dalam file baru, di mana file yang dibuat memiliki tanggal dan waktu dalam namanya.

echo "testfile" >> backup-%DATE%.txt
1
Frode Lillerud