shell 递归遍历目录下的所有文件并删除5分钟前的文件

    技术2022-07-15  76

    概述

    定时递归遍历目录下的所有文件并删除5分钟前的文件。不删除文件夹,只删除过期的文件。

    代码

    #!/bin/bash jd_tim() { filename=$1 timestamp=$(date +%s) filetimestamp=$(stat -c %Y $filename) if [ $[$timestamp - $filetimestamp] -lt 300 ]; then echo "less than five min ========== " $1 else echo timestamp $timestamp echo filetimes $filetimestamp echo during is $[$timestamp - $filetimestamp] echo "delete it >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>delete " $1 rm $1 -f fi } read_dir(){ for file in `ls -a $1` do if [ -d $1"/"$file ]; then #echo in "-d file " $file if [[ $file != '.' && $file != '..' ]]; then #echo in "-------------------------------------- file " $file read_dir $1"/"$file #else # echo "else iiii file is " $file fi else #echo "else-->>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> " $1"/"$file jd_tim $1"/"$file fi done } while [ 1 ] do echo `date` " : " "$1 is " $1 read_dir $1 sleep 10 done

    调用

    /bin/bash /usr/bin/judge.sh /mnt/face/faceCapture/
    Processed: 0.011, SQL: 9