1. 程式人生 > >Linux下刪除無用的(很久沒有訪問或者修改)的檔案

Linux下刪除無用的(很久沒有訪問或者修改)的檔案

#!/bin/bash
##path="/root"
path=$1

if [ ! -d $path ]; then ##判斷目錄是否存在
    echo "Directory '$path' does not exist Or '$path' is not a directory!"
    exit 0
fi

if [ ! -x $path -o ! -r $path ]; then   ##驗證使用者對目錄是否有足夠許可權
    echo "You have no right to  read the directory '$path'!"
    exit 0 
fi

declare -i dayStr=86400 	#一天時間的秒數
declare -i day=7
interval=$(($dayStr*$day)) 	#時間間隔

for file in $path/* 		##遍歷目錄
do 
    if [ -f $file ]; then
	atime=`stat -c %X $file`	##檔案最近一次的訪問時間
	dtime=`date +%s`		##系統時間
    if [ $[ $dtime - $atime ] -gt $interval ]; then
	rm -f $file
    fi
    fi
done