使用find命令组合可完成此功能,步骤如下:
1、创建一个时间标签临时文件(如,创建一个1900年1月1日0时0分的文件)
touch -t 190001010000 rmfile.tmp2、用find命令组合进行删除
find . -type f ! -newer rmfile.tmp -exec rm -f {} \;-type f 只处理普通文件-newer 修改时间比rmfile.tmp新的,即在rmfile.tmp之后的文件! -newer 叹号 取反,即得到rmfile.tmp之前的文件-exec 执行命令rm -f 强制删除,不需要提示3、删除标签临时文件
rm -f rmfile.tmp
将以上命令写到一个文件中,做成一个脚本程序,使用起来会更方便
#!/usr/bin/bashread -p "input time [YYYYmmddHHMM]:" del_timeTMP_FILE=rmfile.tmp.$del_timetouch -t $del_time $TMP_FILEif [ $? -ne 0 ]then echo "create temp file: $TMP_FILE error" exitfifind . -type f ! -newer $TMP_FILE -exec rm -f {} \;rm -f $TMP_FILE
取消
评论