用win7自帶的powershell可以輕鬆修改文件/資料夾建立時間、修改時間。而且可以批量修改。

1. 步驟

新建一個bat檔案,在其中新增語句:

@ECHO OFF
powershell.exe -command "ls 'folder_path\*.dll' | foreach-object { $_.LastWriteTime = Get-Date; $_.CreationTime = Get-Date }"
PAUSE

2. 解釋

程式碼將folder_path路徑下的所有dll檔案的建立時間修改時間改成現在的時間。

  • -command: tells powershell to run the following command and return immediately

  • ls: list all matching files at the path specified

  • foreach-object: run the following block on each file that ls found

  • $_.LastWriteTime = Get-Date: for each file, set the LastWriteTime to the value returned by Get-Date (today’s date and time)

  • $_.CreationTime = Get-Date: for each file, set the CreationTime to the value returned by Get-Date (today’s date and time)

3. 修改至指定時間

$_.LastWriteTime = Get-Date:改為$_.LastWriteTime = '01/11/2004 22:13:36'

@ECHO OFF
powershell.exe -command "ls 'folder_path\*.*' | foreach-object { $_.LastWriteTime = '01/11/2004 22:13:36'; $_.CreationTime = '01/11/2004 22:13:36' }"
PAUSE

4. 遞迴資料夾中所有檔案

@ECHO OFF
powershell.exe -command "Get-Childitem -path 'E:\project_llj\install\test\' -Recurse | foreach-object { $_.LastWriteTime = Get-Date; $_.CreationTime = Get-Date }" 
PAUSE

參考: