Saya memiliki jalur dalam string,
"C:\temp\mybackup.zip"
Saya ingin memasukkan stempel waktu di skrip itu, misalnya,
"C:\temp\mybackup 2009-12-23.zip"
Apakah ada cara mudah untuk melakukan ini di PowerShell?
powershell
Chris Jones
sumber
sumber
get-date -f yyyy-MM-dd
membuat saya berhenti sejenak sebelum menyadari bahwa itu bukan yang-f
Operator namun bentuk pendek untuk-Format
parameter . Itu tampak agak keluar dari tempatnya, entah bagaimana :-)Berikut beberapa kode PowerShell yang seharusnya berfungsi. Anda dapat menggabungkan sebagian besar ini menjadi lebih sedikit baris, tetapi saya ingin membuatnya tetap jelas dan mudah dibaca.
[string]$filePath = "C:\tempFile.zip"; [string]$directory = [System.IO.Path]::GetDirectoryName($filePath); [string]$strippedFileName = [System.IO.Path]::GetFileNameWithoutExtension($filePath); [string]$extension = [System.IO.Path]::GetExtension($filePath); [string]$newFileName = $strippedFileName + [DateTime]::Now.ToString("yyyyMMdd-HHmmss") + $extension; [string]$newFilePath = [System.IO.Path]::Combine($directory, $newFileName); Move-Item -LiteralPath $filePath -Destination $newFilePath;
sumber
Saya perlu mengekspor log keamanan kami dan menginginkan tanggal dan waktu dalam Waktu Universal Terkoordinasi. Ini terbukti menjadi tantangan untuk dipikirkan, tetapi sangat sederhana untuk dieksekusi:
wevtutil export-log security c:\users\%username%\SECURITYEVENTLOG-%computername%-$(((get-date).ToUniversalTime()).ToString("yyyyMMddTHHmmssZ")).evtx
Kode ajaib hanyalah bagian ini:
$(((get-date).ToUniversalTime()).ToString("yyyyMMddTHHmmssZ"))
sumber
hh
adalah waktu 12 jam, tanpanyatt
tidak akan berguna. MenggunakanHH
akan memberi Anda waktu 24 jam. Saya akan merekomendasikan salah satuhhmmsstt
atauHHmmss
hh
keHH
atas. Saya pikir itulah yang diinginkan kebanyakan orang.Terima kasih untuk skrip di atas. Sedikit modifikasi untuk menambahkan file yang diakhiri dengan benar. Coba ini ...
$filenameFormat = "MyFileName" + " " + (Get-Date -Format "yyyy-MM-dd") **+ ".txt"** Rename-Item -Path "C:\temp\MyFileName.txt" -NewName $filenameFormat
sumber
Menggunakan:
$filenameFormat = "mybackup.zip" + " " + (Get-Date -Format "yyyy-MM-dd") Rename-Item -Path "C:\temp\mybackup.zip" -NewName $filenameFormat
sumber
$filenameFormat = "mybackup $(Get-Date -Format "yyyy-MM-dd").zip"
karena itu cocok dengan format OP