Powershell-Datum in Dateinamen schreiben?

2 Antworten

dann lass uns mal etwas mit dem Zeit-Objekt herumspielen....

Das Script führt einmal eine Datei Namens Test.txt , an welche jeweils die Startzeit des Skripts und der Namen angehängt wird.

Das schöne dabei, die Datei kann in andere Programme importiert werden (CSV)

Die zweite Datei ist quasi das Gleiche, nur enthält der DateiName ein Zeitstempel.

  #Zeit einlesen, wie sie ist ist. (Powershell ist Objektorientiert! $MyTime ist  kein String sondern ein  Zeit-Object!)
  #siehe https://www.msxfaq.de/code/powershell/psdatetime.htm
$MyTime=Get-Date
  #in sortierbaren String umwandeln Microsekundengenau
$TimeStamp=$MyTime.tostring("yyyymmddHHmmssffff")
  #hübsch  lesbarer KalenderString
$TimeString=$MyTime.tostring("dddd dd.mm.yyyy HH:mm:ss_ffff")
"TimeString=$TimeString"
"Timstamp=$TimeStamp"
$name = "TESTNAME"
  #das  ganzer in ein hübsches kleines Objectchen umwandeln   
$myHash=New-Object PsObject -property @{ Name=$Name;Time=$TimeString}
  #...und als CSV Datensatz  an eine  Datei anhängen (csv  konnen  mit  jeder  gängigen Datenbank-/Tabellencalculationssoftware importiert werden!)
$myHash|Export-Csv "test.txt" -NoTypeInformation -Append
  #dito in  eine eigene Datei mit einem sortierbaren Zeitstempel im Dateinamen....
$myHash|Export-Csv "test_$TimeStamp.txt" -NoTypeInformation


pause
Woher ich das weiß:eigene Erfahrung – Ich mach das seit 30 Jahren
$zeit = get-date
$name = "TESTNAME"
out-file ="$Pfad\test.txt" -inputObject $zeit, $name

So in der Art

holzi00 
Fragesteller
 20.02.2020, 14:34

Und kann ich damit auch die Zeit/Datum in den Dateinamen schreiben?

0
qugart  20.02.2020, 15:15
@holzi00

So ungefähr.

Musst halt per Rename-Item oder ähnliches den String einfügen.

0