![如何使用 robocopy 複製時間屬性而不重新複製文件](https://rvso.com/image/770123/%E5%A6%82%E4%BD%95%E4%BD%BF%E7%94%A8%20robocopy%20%E8%A4%87%E8%A3%BD%E6%99%82%E9%96%93%E5%B1%AC%E6%80%A7%E8%80%8C%E4%B8%8D%E9%87%8D%E6%96%B0%E8%A4%87%E8%A3%BD%E6%96%87%E4%BB%B6.png)
我將文件轉移到新磁碟,但發現文件的年份錯誤(1980 年),並且無法使用 Photoshop 開啟這些文件。
我想將時間屬性從第一個驅動器複製到第二個驅動器,而無需重新複製檔案。
數據量大。謝謝。
答案1
而不是嘗試使用 Robocopy不是複製,您可以使用Powershell來更新時間戳記。
更新檔案或資料夾修改日期,在 Windows 中,類似 Linux/Unix'觸碰'實用程序,使用 Powershell 的設定項目屬性cmdlet。
你的命令看起來像這樣:
set-itemproperty -path $Yourfile -name lastwritetime -value "2021-05-18 10:17:47"
使用get-childitem
cmdlet 遍歷檔案樹(一級或新增 -recurse 選項以下降資料夾/檔案樹)。
你的循環看起來像這樣:
$filelist = get-childitem C:\Users\You\* -recurse
foreach ($file in $filelist) {
set-itemproperty -path $file -name lastwritetime -value "2021-05-18 10:17:47"
}
有與以下相關的選項取得子項目搶僅文件或者只有資料夾。 在 Powershell 視窗中輸入得到幫助 取得子項目或者設定項目屬性以獲得更多選擇。
答案2
您只需將原始文件的時間戳複製到複製的文件(1980),而不必再次重新複製原始文件,實際上,我在使用 robocopy 之前沒有看到這一點,但我認為您必須再次 robocopy使用/DCOPY :T 開關。它還可以保留 ACL。或者,可以將 SyncThing 和 Gs Richcopy360 設定為保留目錄時間戳記和 ACL。
經過全面搜尋後,我發現Gs Richcopy360有一個名為「資料夾時間戳記」的功能,這將重新更正目的地上的日期,無需重新複製文件,我認為這會有所幫助。