定時刪除 Nas 過舊檔案


老闆交代,Nas 上暫存簡報的目錄要自動刪除 3 天前的檔案。

Nas 是用 QNAP 的,上 QNAP 的網站看,要自動備份後才能自動刪除,感覺有點累贅,所以考慮在 Windows 設排程定時刪除。

查了一下,最簡便的方法是使用 Windows 內建命令 forfiles

但是 forfiles 不支援 UNC 路徑,所以必須將 UNC 路徑映射成網路磁碟。

不支援 UNC 路徑
不支援 UNC 路徑

最後我把下面內容做成 DelOldFiles.cmd 後,設定到工作排程器每日夜裡跑一次。

NET USE Z: \\伺服器名\完整路徑
forfiles /d -3 /p Z:\ /s /m . /c “cmd /c del /f /q @path"
NET USE Z: /delete /y

其中比較重要參數說明如下:

/d -3:表示刪除 3 天前檔案,詳細用法參見參考資訊的連結。

/f /q:表示靜默刪除唯讀檔,靜默對於排程很重要,表示不會跳出任何詢問,詳細用法參見參考資訊的連結。

/y:表示強制中斷網路磁碟,關閉所有連線,詳細用法參見參考資訊的連結。

參考資訊

註: Windows 內建命令可以從上面連結點進去,再從左側命令清單找到其他相關命令

Categories: 工作點滴, 技術分享 | 標籤: | 發表留言

文章分頁導航

發表迴響

在下方填入你的資料或按右方圖示以社群網站登入:

WordPress.com 標誌

您的留言將使用 WordPress.com 帳號。 登出 /  變更 )

Google photo

您的留言將使用 Google 帳號。 登出 /  變更 )

Twitter picture

您的留言將使用 Twitter 帳號。 登出 /  變更 )

Facebook照片

您的留言將使用 Facebook 帳號。 登出 /  變更 )

連結到 %s

在WordPress.com寫網誌.

%d 位部落客按了讚: