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



沒有留言:

張貼留言

GPO policy 設定預設應用程式﹝設定預設關聯設定檔﹞

建立xml設定檔,並將其啟用 Computer Configuration\Administrative Templates\Windows Components\File Explorer 設定檔內容將會新增到User電腦regedit機碼位址 HKLM\Software\Po...