Ich bin überrascht, wie viele Antworten hier einfach falsch sind . Wenn Sie nichts in eine Datei zurückgeben, wird die Datei mit etwas Ähnlichem gefüllt ECHO is ON
, und wenn Sie versuchen, $nul
in eine Datei wiederzugeben, wird dies buchstäblich $nul
in die Datei eingefügt. Darüber hinaus führt das Echo $null
in eine Datei bei PowerShell nicht zu einer 0-KB-Datei, sondern zu einer codierten Datei, UCS-2 LE BOM
die unordentlich werden kann, wenn Sie sicherstellen müssen, dass Ihre Dateien keine Byte-Reihenfolge aufweisen.
Nachdem ich alle Antworten hier getestet und auf einige ähnliche verwiesen habe, kann ich garantieren, dass diese pro Konsolen-Shell funktionieren. Wechseln Sie einfach FileName.FileExtension
in den vollständigen oder relativen Pfad der gewünschten Datei touch
. danke an Keith Russell für das COPY NUL FILE.EXT
Update:
CMD mit Zeitstempel-Updates
copy NUL FileName.FileExtension
Dadurch wird eine neue Datei mit dem Namen "Was auch immer Sie platziert haben" FileName.FileExtension
mit einer Größe von 0 Byte erstellt. Wenn die Datei bereits vorhanden ist, kopiert sie sich grundsätzlich an Ort und Stelle, um den Zeitstempel zu aktualisieren. Ich würde sagen, dies ist eher eine Problemumgehung als eine 1: 1-Funktionalität, touch
aber ich kenne keine integrierten Tools für CMD, mit denen der Zeitstempel einer Datei aktualisiert werden kann, ohne den anderen Inhalt zu ändern.
CMD ohne Zeitstempel-Updates
if not exist FileName.FileExtension copy NUL FileName.FileExtension
Powershell mit Zeitstempel-Updates
if (!(Test-Path FileName.FileExtension -PathType Leaf)) {New-Item FileName.FileExtension -Type file} else {(ls FileName.FileExtension ).LastWriteTime = Get-Date}
Ja, es funktioniert in der Konsole als Einzeiler. Es ist nicht erforderlich, es in einer PowerShell-Skriptdatei abzulegen.
PowerShell ohne Zeitstempel-Updates
if (!(Test-Path FileName.FileExtension -PathType Leaf)) {New-Item FileName.FileExtension -Type file}
touch
. Weitere Diskussionen hier: superuser.com/questions/10426/… und die Cygwin-Bibliothek ist ein allgemeines Toolset von Unix-Befehlen unter Windows.