![如何从列表中删除去年六月的文件](https://linux22.com/image/149987/%E5%A6%82%E4%BD%95%E4%BB%8E%E5%88%97%E8%A1%A8%E4%B8%AD%E5%88%A0%E9%99%A4%E5%8E%BB%E5%B9%B4%E5%85%AD%E6%9C%88%E7%9A%84%E6%96%87%E4%BB%B6.png)
如何从列表中删除去年六月的文件
#!/bin/bash
echo "hi"
path="/home/alert/VideoApplicationAPI.v1/logs"
dayDiff=365
DATE=`date +%Y-%m-%d`
for filename in $path/*.*; do
modDate=$(stat -c %y "$filename")
modDate=${modDate%% *}
echo $filename:$modDate
echo "( `date -d $DATE +%s` - `date -d $modDate +%s`) / (24*3600)" | bc -l
done
echo $DATE
答案1
touch -d '2018-06-01 00:00:00' START
touch -d '2018-07-01 00:00:00' END
find <path of files to be deleted> -type f -newer START -not -newer END -exec rm {} \;
开始和结束将为您提供日期范围。那是2018年6月。你可以先运行only find命令,看看你得到的所有文件是什么。如果文件正确,则执行上述命令。确保备份所有文件,以防执行时出现问题。