crontab 日志备份定时任务
-l选项,查看当前用户的所有定时任务:
[xiluhua@vm-xiluhua][/home]$ crontab -l
* * * * * /home/xiluhua/shell_script/logbk.sh
-e选项,创建或修改当前用户的定时任务:
[xiluhua@vm-xiluhua][/home]$ crontab -e
crontab: no changes made to crontab
-u选项,查看(-l),修改(-e)指定用户的定时任务,(仅root管理员可用):
[root@vm-xiluhua][/home]$ crontab -u xiluhua -l
* * * * * /home/xiluhua/shell_script/logbk.sh
-r选项,删除定时任务
配置文件:
[xiluhua@vm-xiluhua][~/shell_script]$ cat logbk.conf
logbk.sh /home/xiluhua/auto log
代码:
[xiluhua@vm-xiluhua][~/shell_script]$ cat logbk.sh
#!/bin/bash
#author:xiluhua
#since: #####################################################################
# $: name of log*.sh to execute log-backuping
# $: size triggers log backuping
# $: directories need to log-backup
# $: postfix with which log file will be backuped
##################################################################### v_name=$
v_name=${v_name##*/}
v_exce="exception@${v_name}"
v_nohup="/home/xiluhua/shell_script/nohup_logbk.out"
v_conf="/home/xiluhua/shell_script/logbk.conf"
v_date=".$(date +%Y%m%d'_'%H%M%S)" declare -i v_isConfiged= #0true1false
[ ! -s $v_conf ] && echo "exception@conf.error:please check if $v_conf is available!" >> $v_nohup && exit while read -r f1 f2 f3 f4
do
if [[ -n $f1 && $f1 == $v_name ]]
then
[ -z "$f2" ] && echo "$v_exce@2:size triggers log backuping can not be null" >> $v_nohup && exit
[ -z "$f3" ] && echo "$v_exce@3:directories need to log-backup can not be null" >> $v_nohup && exit
[ -z "$f4" ] && echo "$v_exce@4:log postfix can not be null" >> $v_nohup && exit
v_size=$f2
v_dir=$f3
v_postfix=$f4
v_isConfiged=
break
fi
done<"$v_conf" [ $v_isConfiged == ] && echo "$v_exce@1:not appropriate configed" >> $v_nohup && exit v_line=""
for (( i=;i<;i++))
do
v_line=$v_line"="
done
echo $v_line >> $v_nohup
echo "pid:"$$ >> $v_nohup
echo "v_size:"$v_size"M" >> $v_nohup
echo "v_dir:"$v_dir >> $v_nohup
echo "v_postfix:"$v_postfix >> $v_nohup
IFS=";"
echo "=== dirs listening ===" >> $v_nohup
for dir in $v_dir
do
echo "this.dir:"$dir >> $v_nohup
for postfix in $v_postfix
do
echo "find $dir -size +${v_size}M -name '*.$postfix'" >> $v_nohup #find $dir -size +${v_size}M -name "*.$postfix" -exec gzip {} \;
for file in $(find $dir -size +${v_size}M -name "*.$postfix")
do
echo "log files to be backuped:" >> $v_nohup
echo $file >> $v_nohup
gzip -c $file > ${file}${v_date}.gz && echo > $file
done #find $dir -size +${v_size}M -name "*.$postfix" -exec gzip {} \;
done
done
exit
crontab 日志备份定时任务的更多相关文章
- Linux下使用crontab定时备份日志
上周学习了Linux,其中有使用crontab定时备份日志的内容,现把主要步骤记录如下: 首先需要备份的日志的源目录位于/opt/lampp/logs/access_log 备份到/tmp/logs下 ...
- 利用crontab定时备份nginx访问日志(也可以说是定时切分日志)
在我们的工作中,肯定会涉及到分析访问日志. 但是如果访问日志都集中存在于一个文件中,那数据量就太大了,并且也不利于我们进行分析. 所以我们需要对访问日志进行按时间切割. 思路: 我们可以利用linux ...
- MySQL完全备份脚本:数据+二进制日志+备份日志
一. 脚本须知 1.mysql数据文件和二进制日志文件最好保存在不同的分区或存储设备上 2.备份完成后注意修改数据的权限以防止泄露重要信息,哪些主机哪些用户可以用来恢复 3. 查看导出的2进制日志文件 ...
- MySQL定时备份之使用Linux下的crontab定时备份实例
这篇文章主要介绍了使用Linux下的crontab进行MySQL定时备份的例子,需要的朋友可以参考下 复制代码代码如下: ##################################### ...
- Linux下MySQL备份以及crontab定时备份
1. 备份某个数据库 ################################################################## # 备份某个数据库 ############ ...
- 日志备份的shell脚本
以前工作中写的日志备份的脚本,现记录一下日志备份脚本代码,以后工作中遇到遇到需要备份或者清理日志的时候可以拿来简单修改一下使用,减少工作量. 把备份脚本添加到Linux定时任务中,可以定时执行. 日志 ...
- crontab自动备份MySQL数据库并删除5天前备份
1.创建备份文件夹 //备份数据库文件夹 mkdir /data/backmysql //crontab日志 mkdir /data/logs 2.创建脚本文件 db_user="xxx ...
- Gitlab备份,Crontab定时备份
1:Gitlab备份非常简单,只需要一条命令就可以创建完整的备份 gitlab-rake gitlab:backup:create 使用以上命令,就相当于在/var/opt/gitlab/backup ...
- MySQL使用crontab定时备份不执行问题
在使用crontab定时备份数据库时,发现并没有执行备份命令. 下面是定时备份的代码: 30 1 * * * /usr/local/mysql/bin/mysqldump --defaults-ext ...
随机推荐
- node的passport.js验证
项目使用的是passport.js(http://passportjs.org/docs),所以对passport这个中间件研究了一番,在本项目中passport同express-session配合使 ...
- form和validate示例
//验证from表单 $(function () { $("#addUserForm").validate({ rules: { txtName: { required: true ...
- Android 用Animation-list实现逐帧动画
第一步:先上图片素材,以下素材放到res/drawable目录下: http://blog.csdn.net/aminfo/article/details/7847761 图片素材: 文件名称: ic ...
- Java8 新特性default
在JDK1.8的Iterator接口中 package java.util; import java.util.function.Consumer; public interface Iterator ...
- [MVCSharp]开始使用MVC#
Getting started with MVC# framework The source code of this example can be found under "Example ...
- MySQL Replication的相关文件
1.master.info文件 位于slave端的数据目录下,存储slave连接到master的相关信息,如,master主机地址.连接用户.密码.端口.已经获取的日志信息. 复制过程中修改.删除ma ...
- UILabel详解
// ----------------------UILabel--------------------------- UILabel *label = [[UILabel alloc] initWi ...
- Java基础之线程——使用Runnable接口(JumbleNames)
控制台程序. 除了定义Thread新的子类外,还可以在类中实现Runnable接口.您会发现这比从Thread类派生子类更方便,因为在实现Runnable接口时可以从不是Thread的类派生子类,并且 ...
- 转:python webdriver API 之控制浏览器滚动条
有时候 web 页面上的元素并非直接可见的,就算把浏览器最大化,我们依然需要拖动滚动条才能看到想要操作的元素, 这个时候就要控制页面滚动条的拖动, 但滚动条并非页面上的元素, 可以借助 JavaScr ...
- C++之路进阶——bzoj3172(单词)
F.A.Qs Home Discuss ProblemSet Status Ranklist Contest ModifyUser hyxzc Logout 捐赠本站 Notice:由于本OJ建立在 ...