Mam ścieżkę w sznurku,
"C:\temp\mybackup.zip"
Chciałbym wstawić znacznik czasu do tego skryptu, na przykład
"C:\temp\mybackup 2009-12-23.zip"
Czy istnieje łatwy sposób na zrobienie tego w PowerShell?
powershell
Chris Jones
źródło
źródło
get-date -f yyyy-MM-dd
sprawiło, że zatrzymałem się na chwilę, zanim zdałem sobie sprawę, że to nie jest-f
operator, ale krótka forma-Format
parametru . Jakoś wyglądało to raczej nie na miejscu :-)Oto kod PowerShell, który powinien działać. Możesz połączyć większość tego w mniej wierszy, ale chciałem, aby było to jasne i czytelne.
[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;
źródło
Musiałem wyeksportować nasz dziennik bezpieczeństwa i chciałem mieć datę i godzinę w uniwersalnym czasie koordynowanym. Okazało się to wyzwaniem, ale tak prostym do wykonania:
wevtutil export-log security c:\users\%username%\SECURITYEVENTLOG-%computername%-$(((get-date).ToUniversalTime()).ToString("yyyyMMddTHHmmssZ")).evtx
Magiczny kod to tylko ta część:
$(((get-date).ToUniversalTime()).ToString("yyyyMMddTHHmmssZ"))
źródło
hh
to czas 12-godzinny, beztt
niego nie ma sensu. KorzystanieHH
daje 24-godzinny czas. Polecam albohhmmsstt
alboHHmmss
hh
naHH
powyżej. Myślę, że tego będzie chciała większość ludzi.Dzięki za powyższy scenariusz. Jedna mała modyfikacja, aby dodać poprawne zakończenie pliku. Spróbuj tego ...
$filenameFormat = "MyFileName" + " " + (Get-Date -Format "yyyy-MM-dd") **+ ".txt"** Rename-Item -Path "C:\temp\MyFileName.txt" -NewName $filenameFormat
źródło
Posługiwać się:
$filenameFormat = "mybackup.zip" + " " + (Get-Date -Format "yyyy-MM-dd") Rename-Item -Path "C:\temp\mybackup.zip" -NewName $filenameFormat
źródło
$filenameFormat = "mybackup $(Get-Date -Format "yyyy-MM-dd").zip"
dlatego, że pasuje do formatu OP