標籤:批處理 定時任務
資料庫每天備份檔案,然而只需要保留七天的備份即可,編寫一個批處理指令檔自動刪除七天前的檔案並設定定時任務
自動刪除檔案需要用到forfiles命令
forfiles參數:
/p 指定的路徑
/s 包括子目錄
/m 尋找的檔案名稱掩碼
/d 指定日期,有絕對日期和相對日期, 此處-7指當前日期 的7天前
/c 啟動並執行命令列 表示為每個檔案執行的命令。命令字串應該用雙引號括起來。
預設命令是 "cmd /c echo @file"。下列變數 可以用在命令字串中:
@file - 返迴文件名。
@fname - 返回不帶副檔名的檔案名稱。
@ext - 只返迴文件的擴充。
@path - 返迴文件的完整路徑。
@relpath - 返迴文件的相對路徑。
@isdir - 如果檔案類型是目錄,返回 "TRUE";如果是檔案,返回 "FALSE"。
@fsize - 以位元組為單位返迴文件大小。
@fdate - 返迴文件上一次修改的日期。
@ftime - 返迴文件上一次修改的時間。
建立一個記事本檔案,輸入下面的命令,將檔案名稱命名為“刪除7天前備份檔案.bat”,注意要刪除檔案所在的路徑
@echo off #要求輸入密碼forfiles /p "C:\autoscpfile\data" /s /m *.bak /d -7 /c "cmd /c del /f @path"forfiles /p "C:\autoscpfile\log" /s /m *.txt /d -7 /c "cmd /c del /f @path"
指令檔寫好後設定定時任務
在Windows server 2003上開啟任務計劃
“開始”—>“所有程式”—>“附件”—>“系統工具”—>“任務計劃”
空白處按右鍵建立計劃任務,將任務命名為“刪除7天前備份”,雙擊該任務
選擇瀏覽,找到批次檔的路徑,設定密碼,密碼是執行該指令碼的使用者的登入密碼
650) this.width=650;" src="https://s4.51cto.com/wyfs02/M01/9A/B3/wKioL1lZtVyROZKYAAAlWvbhJvY421.png" style="float:none;" title="QQ20170703110805.png" alt="wKioL1lZtVyROZKYAAAlWvbhJvY421.png" />
設定指令碼執行的時間,每天3:00執行該指令碼,然後點擊應用,確定
650) this.width=650;" src="https://s1.51cto.com/wyfs02/M02/9A/B3/wKiom1lZtVyhbueZAAAedBgtwTc631.png" style="float:none;" title="QQ20170703110849.png" alt="wKiom1lZtVyhbueZAAAedBgtwTc631.png" />
在Windows server 2008 R2上開啟任務計劃
“開始”—>“管理工具”—>“工作排程器”
右側操作欄,點擊建立任務
650) this.width=650;" src="https://s4.51cto.com/wyfs02/M01/9A/B4/wKioL1lZulKgpy2fAABzdL4Fcac433.png" title="QQ20170703111946.png" alt="wKioL1lZulKgpy2fAABzdL4Fcac433.png" />
給任務命名,選擇配置,使用最高許可權運行
650) this.width=650;" src="https://s5.51cto.com/wyfs02/M01/9A/B5/wKioL1lZv5HiZZC_AAAzoD2c05w160.png" style="float:none;" title="QQ20170703114609.png" alt="wKioL1lZv5HiZZC_AAAzoD2c05w160.png" />
選擇觸發器,建立
650) this.width=650;" src="https://s1.51cto.com/wyfs02/M02/9A/B5/wKioL1lZv5HyN2V2AAAf0k5gwAk552.png" style="float:none;" title="QQ20170703114637.png" alt="wKioL1lZv5HyN2V2AAAf0k5gwAk552.png" />
選擇建立觸發器,設定任務執行的時間,確定
650) this.width=650;" src="https://s1.51cto.com/wyfs02/M00/9A/B5/wKiom1lZv5LCd89NAAAyKA_Vi-o646.png" style="float:none;" title="QQ20170703115148.png" alt="wKiom1lZv5LCd89NAAAyKA_Vi-o646.png" />
選擇操作,建立
650) this.width=650;" src="https://s2.51cto.com/wyfs02/M00/9A/B5/wKioL1lZv5PQUR2bAAAhoO3a0vI220.png" style="float:none;" title="QQ20170703115202.png" alt="wKioL1lZv5PQUR2bAAAhoO3a0vI220.png" />
點擊瀏覽,選擇要執行的指令碼路徑,起始於選項填寫指令碼路徑,然後確定
650) this.width=650;" src="https://s2.51cto.com/wyfs02/M01/9A/B5/wKiom1lZv5OCZ4O_AAAWviWoS1U234.png" style="float:none;" title="QQ20170703115217.png" alt="wKiom1lZv5OCZ4O_AAAWviWoS1U234.png" />
Windows自動刪除n天前的檔案的批處理指令碼