crotab 常用写法摘记
2016-01-30 13:52
267 查看
由于项目需要定时对业务数据库进行备份
我便写了一个备份脚本,那么谁来定时做呢
根据多年的项目经验,首选 crontab
每天的23:10执行以下脚本【1】或者【2】
【1】10 23 * * * /opt/www/platform/bin/backup_platformdb.sh
【2】10 23 * * * /opt/www/platform/bin/backup_platformdb.sh >
/dev/null 2>&1
对于【2】的解释:
每条任务调度执行完毕,系统都会将任务输出信息通过电子邮件的形式发送给当前系统用户,这样日积月累,日志信息会非常大,可能会影响系统的正常运行,因此,将每条任务进行重定向处理非常重要。
例如,可以在crontab文件中设置如下形式,忽略日志输出:
0 */3 * * * /usr/local/apache2/apachectl restart >/dev/null 2>&1
“/dev/null 2>&1”表示先将标准输出重定向到/dev/null,然后将标准错误重定向到标准输出,由于标准输出已经重定向到了/dev/null,因此标准错误也会重定向到/dev/null,这样日志输出问题就解决了。
对于crontab的一些重要点:
1)新创建的cron
job,不会马上执行,至少要过2分钟才执行。如果重启cron则马上执行。
2)每条 JOB 执行完毕之后,系统会自动将输出发送邮件给当前系统用户。日积月累,非常的多,甚至会撑爆整个系统。所以每条 JOB 命令后面进行重定向处理是非常必要的: >/dev/null 2>&1 。前提是对 Job 中的命令需要正常输出已经作了一定的处理,
比如追加到某个特定日志文件。
3)当crontab突然失效时,可以尝试/etc/init.d/crond restart解决问题。或者查看日志看某个job有没有执行/报错tail -f /var/log/cron。
4)千万别乱运行crontab -r。它从Crontab目录(/var/spool/cron)中删除用户的Crontab文件。删除了该用户的所有crontab都没了。
5)在crontab中%是有特殊含义的,表示换行的意思。如果要用的话必须进行转义\%,如经常用的date ‘+%Y%m%d’在crontab里是不会执行的,应该换成date ‘+\%Y\%m\%d’`。
我便写了一个备份脚本,那么谁来定时做呢
根据多年的项目经验,首选 crontab
每天的23:10执行以下脚本【1】或者【2】
【1】10 23 * * * /opt/www/platform/bin/backup_platformdb.sh
【2】10 23 * * * /opt/www/platform/bin/backup_platformdb.sh >
/dev/null 2>&1
对于【2】的解释:
每条任务调度执行完毕,系统都会将任务输出信息通过电子邮件的形式发送给当前系统用户,这样日积月累,日志信息会非常大,可能会影响系统的正常运行,因此,将每条任务进行重定向处理非常重要。
例如,可以在crontab文件中设置如下形式,忽略日志输出:
0 */3 * * * /usr/local/apache2/apachectl restart >/dev/null 2>&1
“/dev/null 2>&1”表示先将标准输出重定向到/dev/null,然后将标准错误重定向到标准输出,由于标准输出已经重定向到了/dev/null,因此标准错误也会重定向到/dev/null,这样日志输出问题就解决了。
对于crontab的一些重要点:
1)新创建的cron
job,不会马上执行,至少要过2分钟才执行。如果重启cron则马上执行。
2)每条 JOB 执行完毕之后,系统会自动将输出发送邮件给当前系统用户。日积月累,非常的多,甚至会撑爆整个系统。所以每条 JOB 命令后面进行重定向处理是非常必要的: >/dev/null 2>&1 。前提是对 Job 中的命令需要正常输出已经作了一定的处理,
比如追加到某个特定日志文件。
3)当crontab突然失效时,可以尝试/etc/init.d/crond restart解决问题。或者查看日志看某个job有没有执行/报错tail -f /var/log/cron。
4)千万别乱运行crontab -r。它从Crontab目录(/var/spool/cron)中删除用户的Crontab文件。删除了该用户的所有crontab都没了。
5)在crontab中%是有特殊含义的,表示换行的意思。如果要用的话必须进行转义\%,如经常用的date ‘+%Y%m%d’在crontab里是不会执行的,应该换成date ‘+\%Y\%m\%d’`。
相关文章推荐
- vim ctags 的使用
- poj3211 Washing Clothes(01背包)
- 【Android】【笔记】《The Android Developer’s Cook Book》第1章 安卓概览
- 小试ImageMagik——使用篇
- PC的时间精确吗?
- 打造你的开发神器——介绍Android Studio上的几个插件
- Android开发秘籍学习笔记(十四)
- 关于Android应用如何正确存放文件
- 入职第一个月工资这样花,一年内工资至少可以再涨50%!
- 入职第一个月工资这样花,一年内工资至少可以再涨50%!
- 使用CentOS7配置Squid代理
- unix环境高级编程之线程篇(一)
- UIColor创建UIImage备忘
- AutoLayout 代码实现约束
- js获取get参数方法
- hbase的regionserver宕机
- hbase的regionserver宕机
- 二进制位运算积累备忘
- 在MAC上查找和设置$JAVA_HOME
- CS 4820 second lecture