Burada kaç cevabın yanlış olduğunu görünce şaşırdım . Bir dosyaya hiçbir şey yazmamak dosyayı benzer bir şeyle doldurur ve bir dosyaya ECHO is ONyankı koymaya çalışmak $nulkelimenin tam anlamıyla $nuldosyaya yerleştirilir. Ayrıca PowerShell için, $nullbir dosyaya yankılama 0kb dosyası yapmaz, ancak UCS-2 LE BOMdosyalarınızın bayt sırası işareti olmadığından emin olmanız gerekirse dağınık hale gelebilecek şekilde kodlanır .
Burada tüm cevapları test ettikten ve benzer cevaplara referans verdikten sonra, bunların konsol kabuğu başına çalışacağını garanti edebilirim. FileName.FileExtensionİstediğiniz dosyanın tam veya göreli yolunu değiştirmeniz yeterlidir touch; sayesinde Keith Russell için COPY NUL FILE.EXTgüncelleme:
Zaman Damgası Güncellemeli CMD
copy NUL FileName.FileExtension
Bu FileName.FileExtension, 0 bayt boyutunda değil, yerleştirdiğiniz adla yeni bir dosya oluşturur . Dosya zaten varsa, zaman damgasını güncellemek için temel olarak kendini yerinde kopyalar. Bunun 1: 1 işlevselliğinden daha fazla geçici bir çözüm olduğunu söyleyebilirim, touchancak CMD için bir dosyanın zaman damgasını diğer içeriğini değiştirmeden güncellemeyi başarabilen yerleşik bir araç bilmiyorum.
CMD Zaman Damgası Güncellemesiz
if not exist FileName.FileExtension copy NUL FileName.FileExtension
Zaman Damgası Güncellemelerine Sahip Powershell
if (!(Test-Path FileName.FileExtension -PathType Leaf)) {New-Item FileName.FileExtension -Type file} else {(ls FileName.FileExtension ).LastWriteTime = Get-Date}
Evet, konsolda bir astar olarak çalışacaktır; PowerShell komut dosyasına yerleştirmeye gerek yoktur.
Zaman Damgası Güncellemeleri olmadan PowerShell
if (!(Test-Path FileName.FileExtension -PathType Leaf)) {New-Item FileName.FileExtension -Type file}
touch. Burada diğer tartışmalar: superuser.com/questions/10426/… ve Cygwin kütüphanesi , Windows'ta Unix komutlarının ortak bir araç takımıdır.