2017年5月15日 星期一

Shell Script 刪除過期檔案

Shell Script 排程刪除過期檔案,並記錄刪除的檔案清單!

FTP 是用來傳送 E-Mail 無法傳遞的大檔案,使用者一般放上去就是放著,不會在對方下載完後再上 FTP 去刪除它。

每個使用者把它當檔案伺服器使用,磁碟空間就會不足了。

不記錄的話,也可以直接將第二行 find 命令寫在 crontab 裡更精簡。


#!/bin/bash
export PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin

Home="/var/ftp"
Delete_Day="5"
User_Name="/root/User_List.txt"

for U in `awk '{print $1}' $User_Name`; do
  find $Home/$U/ -depth -type f \
        -daystart -mtime +$Delete_Day | sort >> /tmp/AutoDelFile.$(date +%Y%m%d).txt
  find $Home/$U/ -depth -type f \
        -daystart -mtime +$Delete_Day -exec rm -rf {} \; > /dev/null 2>&1

  find $Home/$U/ -depth -empty -exec rm -rf {} \; > /dev/null 2>&1
done



沒有留言:

張貼留言

ManageEngine EventLog Analyzer版本更新步驟

更新檔下載位址: Upgrade to Latest Version of EventLog Analyzer Build (manageengine.com) 先將下載的更新檔上傳到主機裡,再進行下列動作。 切換到 ManageEngine EventLog Analyzer ...