[linux shell] 使用shell每天定时拷贝文件到新的文件名下,并删除30天之前的文件

来源:互联网 发布:7u分享网络电脑版注册 编辑:程序博客网 时间:2024/05/16 21:18

1,使用vi编辑器,编写如下内容并保存为cpGpsData.sh


echo "******************************************************************"
echo "copy GpsData to /home/public/GpsData/ and delete 7 day's ago file"
if [ ! -d "/home/public/GpsData" ]
then
 mkdir -p /home/public/GpsData
fi
#del 7 days ago's GpsData
oldday=`date +%Y%m%d -d "7 days ago"` ##old file date
#echo $oldday
find /home/public/GpsData/ -name "GpsData_*" -mtime +7  -exec rm {} \;  


# copy /home/public/App/ShareFile/GpsData/GpsData to /home/public/GpsData/
today=`date +%Y%m%d`
#echo $today
if [ -e "/home/public/App/ShareFile/GpsData/GpsData" ]
then
    cp /home/public/App/ShareFile/GpsData/GpsData /home/public/GpsData/GpsData_$today
else
    echo "/home/public/App/ShareFile/GpsData/GpsData file does not exist!"
fi
echo "*******************************************************************"


2,将cpGpsData.sh文件修改为可执行的模式:chmod +x cpGpsData.sh


3,每天定时执行,进入root用户:

        3.1 输入:crontab -e

        3.2 输入:52 09 * * * /home/public/GpsData/./cpGpsData.sh

上面这句话的意思是 每天的9点52分定时执行 /home/public/GpsData/下的cpGpsData.sh脚本文件


以上操作完毕,将实现每天定时拷贝GpsData文件到新的文件名下,并删除30天以前的文件

0 0
原创粉丝点击