由于工作需要, 有台Oracle数据库归档日志太多, 需要写个shell脚本自动删除, 今晚就写出来了
#!/bin/bash
#要执行删除的目录
p=/oracle/product/archive
#设定排除删除的文件最后修改时间的范围,修改时间范围是执行此脚本距日志文件最后修改时多少秒内
time_sect=604800
#执行脚本的当前时间
timenow=`date -u +%s`
#循环开始选择文件名
cd $p
for i in `ls *.dbf`
do
#文件的创建时间
file_time=`stat --printf=%Y $p/$i`
#判断文件的修改时间是都达到指定的时间范围,如果达到则删除
if [ $(($timenow-$file_time)) -gt $time_sect ]
then
rm -rf $p/$i
fi
done
exit