扣扣技术分享交流群:1125844267
1、设置Linux定时器
crontab -e编辑属于当前用户的定时任务
0 */1 * * * sh /usr/local/ziwu/back/myScheduleTest.sh //脚本所在目录
2、脚本文件内容
#!/bin/bash
echo "hello world start"
#根据脚本所在路径
this_path=$(cd `dirname $0`;pwd)
#列出时间
current_date=`date +"%Y-%m-%d"`
cd $this_path
echo $this_path
echo $current_date
do_split() {
[ ! -d logs ] && mkdir -p logs
#切分1兆每块至logs文件中,格式为:nohup-xxxxxxxxxx,切分大小可以自己设置,切分的日志文件和切分后的日志文件可以自己指定
split -b 1m -d -a 4 ./nohup.out ./logs/nohup-${current_date}
if [ $? -eq 0 ];then
echo "Split is finished!"
else
echo "Split is Failed!"
exit 1
fi
}
do_del_log(){
#清理1天前创建的日志,通过设置+n的值来确定清除几天前的日志文件
find ./logs -type f -ctime +1 | xargs rm -rf
#清空当前目录的nohup.out文件
cat /dev/null > nohup.out
}
if do_split ;then
do_del_log
echo "nohup is split Success"
else
echo "nohup is split Failure"
exit 2
fi
echo "hello world end"