日志按日期自动备份

1.编写一个脚本

#!/bin/bash
#日志存放位置
path='/var/local/rcserver/1'
#日志备份保存位置
path1='/var/local/rcserver/1'
# 获取当前年信息和月信息
day=$(date -d yesterday +"%Y-%m")
#获取昨天的日信息
day1=$(date -d yesterday +"%d")
#按年月创建文件夹
mkdir -p $path/$day
#备份昨天的日志到当月的文件夹
mv $path/linuxprobe.txt $path1/$day/linuxprobe_$day1.txt
#输出备份日志文件名
#echo $path/$day/linuxprobe_$day1.txt
#生产任务程序不要随意打印输出信息

#注:如是日志文件,则mv移动后,以前的日志文件将不再存在,则需要重启服务,重新生成日志。(可添加一行代码重启服务,如:server sshd restart)

2.给脚本可执行权限

chmod 777 1.sh

执行脚本

./1.sh

3.将脚本加入定时任务中

crontab命令概念

crontab命令用于设置周期性被执行的指令。该命令从标准输入设备读取指令,并将其存放于“crontab”文件中,以供之后读取和执行。

  *           *        *        *        *           command

minute   hour    day   month   week      command

分          时         天      月        星期       命令

星号(*):代表每的意思,例如month字段如果是星号,则表示每月都执行该命令操作。

逗号(,):表示分隔时段的意思,例如,“1,3,5,7,9”。

中杠(-):表示一个时间范围,例如“2-6”表示“2,3,4,5,6”。

正斜线(/):可以用正斜线指定时间的间隔频率,例如“0-23/2”表示每两小时执行一次。同时正斜线可以和星号一起使用,例如*/10,如果用在minute字段,表示每十分钟执行一次。

运行crontab –e 编写一条定时任务(如这里写的就是每天0点1的时候执行这个脚本)

运行crontab –l查看

运行crontab –r 删除当前用户定时任务(注意:这里删除是直接把当前用户的定时任务全部删完,删除一条数据,可以运行crontab –e 进行编辑)

 

 

  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值