2014-01-10 49 views
2

我想知道文件最後一次修改的時間。批處理 - 用秒記錄上次修改時間

我可以得到這些相關信息使用以下批處理腳本:

FOR %% I IN(MYFILE)DO SET modif_time = %%〜TI

的問題是,我需要的第二次修改和命令%~t返回的日期和時間只有幾小時和幾分鐘。

我只能通過文件手動查看「屬性窗口」文件來檢查秒數。

如何以秒爲單位獲得時間?

+0

他們不應該被隨機排序 - FAT32有2秒時間戳粒度但NTFS格式是遠遠細。 – foxidrive

+0

我再次控制,即使分鐘相同,文件也不會隨機排序,而是以正確的方式排序。也許我在第一次檢查時犯了錯誤。我的錯誤。謝謝。 @foxidrive – user3133076

回答

2
wmic datafile where name="FileName" get LastModified 

FileName必須包含雙退格的完整路徑。


例如排序(最近的在前):

for /f "delims=" %a in ('wmic datafile where "drive='c:' and path='\\windows\\'" get LastModified^,Name /format:table^|find ":"^|sort /r') do @echo %a 
+1

我收到此錯誤消息:沒有實例可用。 –

4

Windows 7和轉發(或通過XP資源工具包),您可以使用forfiles爲此。喜歡的東西:

forfiles /m *.* /c "cmd /c ECHO The last modified date of: @file is: @ftime" 

在目錄中的以下文件:

myTest.txt 
myTest2.txt 

我得到:

The last modified date of: "myTest.txt" is: 13:21:07 
The last modified date of: "myTest2.txt" is: 13:21:20 
+0

那麼,但我怎樣才能使用這個來獲取批處理文件中的變量?該命令將打開一個新的cmd。我錯了嗎? – user3133076

1
wmic datafile where "drive='c:' and path='\\windows\\'" get "Last Modified",Name 
相關問題