使用powershell刪除指定日期前的文件並添加到計劃任務

公司會議視頻轉換所使用的機器系統爲windows,因程序轉換失敗時會在D盤生成臨時文件,日積月累會形成磁盤滿,形成新的視頻會議錄製內容沒法轉換,爲避免此類狀況,臨時用powershell編寫了對應的刪除及添加計劃任務腳本。shell

系統環境:Microsoft Windows Server 2012 R2 Standardwindows

powershell版本:4.0服務器

1. 刪除腳本

這裏放到了D盤根目錄下面,文件名爲D:\delete_tmp_files.ps1,刪除15天前的文件和目錄。less

刪除腳本delete_tmp_files.ps1內容以下:ide

#delete old tmp files,just save files in 15 days~
$TimeOutDays=15    
$filePath="D:\tmp"     
$allFiles=get-childitem -path $filePath     
foreach ($files in $allFiles)     
{       
   $daypan=((get-date)-$files.lastwritetime).days       
   if ($daypan -gt $TimeOutDays)       
   {         
     remove-item $files.fullname -Recurse -force       
    }     
}

-Recurse表示遞歸,能夠刪除子目錄code

-force 強制刪除,能夠刪除隱藏及只讀文件(delete all file force fully,delete all hidden or read-only files)視頻

2. 添加計劃任務

選中add_schedule_task.ps1腳本,鼠標右鍵選擇使用PowerShell運行便可。blog

加入計劃任務的powershell腳本add_schedule_task.ps1內容以下:遞歸

ipmo PSScheduledJob 
$T = New-JobTrigger -Weekly -DaysOfWeek 0,1,2,3,4,5,6 -At 2:38AM
Register-ScheduledJob -Name Delete-Tmp-Files -FilePath "D:\delete_tmp_files.ps1" -Trigger $T

-DaysOfWeek: 在周計劃任務中,指定每週的哪一天運行,通常與-Weekly配合使用。ip

週日-->週一-->...-->週六可用對應英文表示,也可用數字表示,對應表以下:

表示方法 週日 週一 週二 週三 週四 週五 週六
英文 Sunday Monday Tuesday Wednesday Thursday Friday Saturday
數字 0 1 2 3 4 5 6

3.查看計劃任務

點擊服務器管理器-->任務計劃程序-->Microsoft-->Windows-->PowerShell-->ScheduledJobs

1.jpg
2.jpg

參考:

利用powershell刪除早於某個指定日期的文件

delete-files-older-than-15-days-using-powershell

HOW TO CREATE SCHEDULE TASK USING POWERSHELL

New-JobTrigger

how-to-delete-a-folder-or-file-using-powershell

相關文章
相關標籤/搜索