PowerShell 研究 – 伺服器維運 定期清理不必要檔案

by Eddie 9. December 2014 10:33

在管理Server上常遇到的問題就是空間不足的狀況,而在整理資料上如果做好計畫的話,

通常在Server之中就會有一堆不知道是誰或者何時建立的檔案,

最近有客戶希望可幫他們設定Windows Backup,

並且提出了希望可以定期的將這些備份檔案給移除的需求。

所以今天就來分享一個實用的PowerShell指令,

這個指令是透過查詢檔案的最後寫入日期來做依據,只要超出一定的時間就會將檔案移除或移動。

 

以下面這一個我在D磁碟區所建立的Temp資料夾為例,裡面有三個不同的檔案。

其中有一個Word文件是已經超過7天的文件,我希望超出7天的檔案可以被自動移除。

clip_image002

首先我們可以透過下列指令來檢查,這三個檔案的最後寫入日期

Get-ChildItem D:\Temp -Recurse

clip_image003

並透過下列指令將超過7天的檔案來進行移除的動作

$Today = Get-Date

$Days = “-7”

$TargetFolder = “D:\Temp”

$LastWrite = $Today.AddDays($Days)

Get-ChildItem $TargetFolder -Recurse | Where {!$_.PSIsContainer}| where {$_.LastWriteTime -le "$LastWrite"} | Remove-Item

之後在回到D:\Temp的資料夾中,就可以看到原本那一個超過7天的Word檔案已經被移除。

clip_image005

參考資料

Using the Get-ChildItem Cmdlet

Tags: ,

PowerShell指令

Add comment




  Country flag
biuquote
  • Comment
  • Preview
Loading






關於我們

這裡是由一群熟悉 Microsoft IT 技術的工程師所共同分享技術文章的部落格,除了定期分享工作上的技術經驗,我們也提供專業的技術顧問諮詢服務,有任何疑難雜症都歡迎與我們聯絡!

  • 陳冠龍(Owen)
  • 02-2322-2480 # 33
  • 陳昌賢(Mars)
  • 02-2322-2480 # 16
  • 有任何的建議或問題,請來信 [email protected]

※ 學習資源:
    2016/3/9 - 你所不知道的 Microsoft Azure 雲端採購技巧
    (講者:多奇數位技術總監 - Will 保哥)

最新消息

企業上雲端會是未來趨勢

微軟主打 2 種公有雲平台

Office 365 & Azure

有興趣皆可來電 or E-Mail 詢問

Calendar

<<  March 2024  >>
MoTuWeThFrSaSu
26272829123
45678910
11121314151617
18192021222324
25262728293031
1234567

View posts in large calendar