-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 日志备份定时任务的更多相关文章

  1. Linux下使用crontab定时备份日志

    上周学习了Linux,其中有使用crontab定时备份日志的内容,现把主要步骤记录如下: 首先需要备份的日志的源目录位于/opt/lampp/logs/access_log 备份到/tmp/logs下 ...

  2. 利用crontab定时备份nginx访问日志(也可以说是定时切分日志)

    在我们的工作中,肯定会涉及到分析访问日志. 但是如果访问日志都集中存在于一个文件中,那数据量就太大了,并且也不利于我们进行分析. 所以我们需要对访问日志进行按时间切割. 思路: 我们可以利用linux ...

  3. MySQL完全备份脚本:数据+二进制日志+备份日志

    一. 脚本须知 1.mysql数据文件和二进制日志文件最好保存在不同的分区或存储设备上 2.备份完成后注意修改数据的权限以防止泄露重要信息,哪些主机哪些用户可以用来恢复 3. 查看导出的2进制日志文件 ...

  4. MySQL定时备份之使用Linux下的crontab定时备份实例

    这篇文章主要介绍了使用Linux下的crontab进行MySQL定时备份的例子,需要的朋友可以参考下   复制代码代码如下: ##################################### ...

  5. Linux下MySQL备份以及crontab定时备份

    1. 备份某个数据库 ################################################################## # 备份某个数据库 ############ ...

  6. 日志备份的shell脚本

    以前工作中写的日志备份的脚本,现记录一下日志备份脚本代码,以后工作中遇到遇到需要备份或者清理日志的时候可以拿来简单修改一下使用,减少工作量. 把备份脚本添加到Linux定时任务中,可以定时执行. 日志 ...

  7. crontab自动备份MySQL数据库并删除5天前备份

    1.创建备份文件夹 //备份数据库文件夹 mkdir /data/backmysql //crontab日志 mkdir /data/logs   2.创建脚本文件 db_user="xxx ...

  8. Gitlab备份,Crontab定时备份

    1:Gitlab备份非常简单,只需要一条命令就可以创建完整的备份 gitlab-rake gitlab:backup:create 使用以上命令,就相当于在/var/opt/gitlab/backup ...

  9. MySQL使用crontab定时备份不执行问题

    在使用crontab定时备份数据库时,发现并没有执行备份命令. 下面是定时备份的代码: 30 1 * * * /usr/local/mysql/bin/mysqldump --defaults-ext ...

随机推荐

  1. 知识准备-JOIN/EXISTS

    10:40 2013-08-29 JOIN ON...AND A left join B on A.col1=B.col1 and A.col2=xx A left join B on A.col1= ...

  2. UTC时间与本地时间的相互转换

    //把UTC时间转换成北京时间 DateTime now = DateTime.Parse(DateTime.UtcNow.ToString(), new CultureInfo("zh-C ...

  3. itunes connect

    https://developer.apple.com/library/content/documentation/LanguagesUtilities/Conceptual/iTunesConnec ...

  4. js获取页面及个元素高度、宽度

    网页可见区域宽: document.body.clientWidth; 网页可见区域高: document.body.clientHeight; 网页可见区域宽: document.body.offs ...

  5. TNS-01189: The listener could not authenticate the user

    查看监听时,发现监听状态异常,报TNS-01189: The listener could not authenticate the user错误 $ lsnrctl stat LSNRCTL - P ...

  6. 设置GPnP profile文件中asm spfile的位置

    登录asmcmd asmcmd> spset <location-绝对路径> 示例: ASMCMD> spset +DATA/asm/asmparameterfile/asms ...

  7. (Command Pattern)命令模式

    定义 将“请求”封装成对象,以便使用不同的请求.队列或者日志来参数化其他对象.命令模式也支持可撤销的操作. 结构图: 命令模式的角色划分: Reciever(命令的接收者):接收命令,并知道如何进行必 ...

  8. redhat vim编辑器永久添加行号

    cd ~ vim .vimrc 第一行加入: set nu :wq 保存退出,即可 如果想取消设置,同理删除set nu即可

  9. bat file handling, main: echo type *.txt >> />

    echo.@.call.pause.rem(小技巧:用::代替rem)是批处理文件最常用的几个命令 echo 表示显示此命令后的字符  echo off 表示在此语句后所有运行的命令都不显示命令行本身 ...

  10. 解决 Xamarin 拖拽Plain Text 于Layout上时 出现 “The layout could not be loaded:java.lang.System.arraycopy([CI[CII)V” 错误

    右键项目属性