#!/bin/bash
imsiRecordDir=/opt/dir1/
aimDir=/opt/dir2/
#源目录集合
dirArray=( $imsiRecordDir )
#正则查找文件
regex=".*\(log\)$"
#清除策略(shell里面乘法和除法需要转义)
minTime=`expr 10 \* 1 \* 1 \* 1`
currentTime=$(date +%s)
time=`expr $(date +%s) \/ 10`
if [ ! -d $aimDir ]; then
mkdir -p $aimDir
fi
for (( i=0;i<${#dirArray[@]};i++))
do
echo ${dirArray[i]}
echo $regex
fileArray=`find ${dirArray[i]} -regex "$regex"`
for j in $fileArray
do
echo $j
createTime=`stat -c %Y "$j"`
#echo ${array[i]}$j"文件上次修改时间:"$createTime
mTime=`expr $currentTime - $createTime`
#echo "时间差:"$mTime
if [[ $mTime -gt $minTime ]];then
cp $j $aimDir'/'$createTime'.log.COMPLETED'
mv $aimDir'/'$createTime'.log.COMPLETED' $aimDir'/'$createTime'.log'
mv $j $j'.COMPLETED'
fi
done
done
实用shell脚本 文件整理移动清除,可指定时间
最新推荐文章于 2023-10-22 23:15:45 发布