2012-02-12 78 views
0

在Windows 7中,如何清除或設置當今所有文件和子文件在特定目錄中的時間戳? 我已經使用fsutil behavior set disablelastaccess 1, 禁用了時間戳保存,但此時它已被保存。我怎麼能清楚這一點?批處理腳本重置所有文件的時間戳

+0

這與基本問題問題涉及,如何重置時間戳:Unix的touch命令的Windows版本(http://stackoverflow.com/questions/51435/windows-version-of-the- UNIX的觸摸命令)。要迭代文件,可以使用'FOR'循環。 – 2012-02-12 19:18:57

回答

3

這是棘手的語法,但copy file+將更新文件的最後寫入屬性,而不會對內容進行任何更改。該文件必須位於當前目錄中。

上面的作品在Vista中。我也看到了copy file+,,。這也適用於Vista,也許這種形式在其他一些Windows版本中是必需的。

我不確定當你說你「使用fsutil behavior set disablelastaccess 1禁用時間戳保存」時你的意思。只要文件被更改,最後寫入的時間戳就會被更新。唯一被禁用的是上次訪問時間戳的更新。這是Vista轉發的默認行爲。最後訪問時間戳無論如何都是毫無價值的,因爲Windows在訪問時不能可靠地設置它。

您可以使用以下腳本輕鬆更新目錄和子目錄中所有文件的上次寫入時間戳。

@echo off 
setlocal 
for /d /r "someDirectoryPath" %%D in (.) do (
    cd "%%D" 
    copy *+ 
) 
相關問題