crontab可以在指定的时间执行一个shell脚本以及执行一系列Linux命令

例如:服务器管理员定时备份数据库数据、日志等

详解:

常用命令:

crontab –e     //修改 crontab 文件,如果文件不存在会自动创建。
crontab –l //显示 crontab 文件。
crontab -r //删除 crontab 文件。
crontab -ir //删除 crontab 文件前提醒用户。 service crond status //查看crontab服务状态
service crond start //启动服务
service crond stop //关闭服务
service crond restart //重启服务
service crond reload //重新载入配置

基本格式 :

*  *  *  *  *  command
分 时  日  月  周  命令

第1列表示分钟00~59 每分钟用*或者 */1表示

第2列表示小时00~23(0表示0点)

第3列表示日期01~31

第4列表示月份01~12

第5列标识号星期0~6(0表示星期天)

第6列要运行的命令

部分举例:

1、在 凌晨00:10运行

10 0 * * * /home/swz/aa.sh

2、每个工作日23:59都进行备份作业。

59 23 * * 1,2,3,4,5 /home/swz/aa.sh   或者  59 23 * * 1-5 /home/swz/aa.sh

3、每分钟运行一次命令

*/1 * * * * /home/swz/aa.sh

4、每个月的1号 14:10 运行

10 14 1 * * /home/swz/aa.sh

5、每10分钟定时请求一个地址

0 */10 * * * /usr/bin/curl http://www.aaa.com/index.php

正确、错误日志的输出是否写入到文件方法:

1.不输出任何内容(建议使用方法一)

*/1 * * * * /root/XXXX.sh >/dev/null 2>&1

*/1 * * * * /root/XXXX.sh &>/dev/null //&表示任何内容

2.将正确和错误日志都输出到 /tmp/load.log

*/1 * * * * /root/XXXX.sh > /tmp/load.log 2>&1

3.只输出正确日志到 /tmp/load.log

*/1 * * * * /root/XXXX.sh > /tmp/load.log

*/1 * * * * /root/XXXX.sh 1> /tmp/load.log //1可以省略

4.只输出错误日志到 /tmp/load.log

*/1 * * * * /root/XXXX.sh 2> /tmp/load.log

部分解释:

/dev/null 代表空设备文件
> 代表重定向到哪里
1 表示stdout标准输出,系统默认值是1,所以">/dev/null"等同于"1>/dev/null"
2 表示stderr标准错误
& 表示等同于的意思,2>&1,表示2的输出重定向等同于1

加锁脚本写法:

*/ * * * * cd /home/homework/script && flock -xn dataSync.lock /home/homework/php/bin/php dataSync.php  >> dataSync.log >&

秒级脚本写法:

#!/bin/bash
step= #间隔的秒数,不能大于60
for (( i = ; i < ; i=(i+step) )); do
$(cd /home/homework/script && flock -xn dataSync.lock /home/homework/php/bin/php dataSync.php)
sleep $step
done
exit

Linux 定时执行shell脚本命令之crontab的更多相关文章

  1. Linux中执行shell脚本命令的4种方法总结

    bash shell 脚本的方法有多种,现在作个小结.假设我们编写好的shell脚本的文件名为hello.sh,文件位置在/data/shell目录中并已有执行权限. 方法一:切换到shell脚本所在 ...

  2. 【转】linux 定时执行shell脚本

    在oracle 中可以利用dbms_job包定时执行pl/sql.sql过程,在像备份等需要在操作系统级定时任务只能采用crontab来完成 本文讲述crontab具体用法,以供备忘. 在oracle ...

  3. linux 定时执行shell脚本

    转自:http://blog.csdn.net/jingxiangren/article/details/4745631 在oracle 中可以利用dbms_job包定时执行pl/sql.sql过程, ...

  4. linux定时执行shell脚本

    写一个shell脚本,定时执行简单示例 很多时候我们有希望服务器定时去运行一个脚本来触发一个操作,比如说定时去备份服务器数据.数据库数据等 不适合人工经常做的一些操作这里简单说下 Shell俗称壳,类 ...

  5. Linux 定时执行shell脚本_crontab

    1.查看任务[oracle@XXXXX OracleBackA]$ crontab -l 2.新增任务[oracle@XXXXX OracleBackA]$ crontab -e 3.每天14点40执 ...

  6. 使用crontab,让linux定时执行shell脚本

    阅读目录 1. cron服务[Ubuntu环境] 2. crontab用法 3. 编辑crontab文件 4. 流程举例 5. 几个例子 Linux中,周期执行的任务一般由cron这个守护进程来处理. ...

  7. 【Linux】使用crontab,让linux定时执行shell脚本

    阅读目录 1. cron服务[Ubuntu环境] 2. crontab用法 3. vim编辑crontab文件 4.Cron各项描述 5.例子解释 Linux中,周期执行的任务一般由cron这个守护进 ...

  8. 每天一个linux命令(62):sh命令 /Linux中执行shell脚本的4种方法总结

    bash shell 脚本的方法有多种,现在作个小结.假设我们编写好的shell脚本的文件名为hello.sh,文件位置在/data/shell目录中并已有执行权限. 方法一:切换到shell脚本所在 ...

  9. Linux定时执行.sh脚本

    因为测试ffmpeg推流用flv方式的话没有做自动断流,所以要先用.sh脚本来执行关流,降低CPU和其他资源占用 首先编写.sh文件 #! /bin/bash echo "kill ffmp ...

随机推荐

  1. 笔记:XML-解析文档-DOM

    要处理XML文档,就要先解析(parse)他,解析器时这样一个程序,读入一个文件,确认整个文件具有正确的格式,然后将其分解成各种元素,使得程序员能够访问这些元素,Java库提供了两种XML解析器: 像 ...

  2. MSIL实用指南-生成索引器

    MSIL实用指南-生成索引器 索引器是一种特殊的属性,它有参数的,也有get和set方法,属性名称一般是"Item",并且方法名称一般名称是"get_Item" ...

  3. Redis登录密码设置

    1. 更改Redis.conf配置 # requirepass foobared 去掉注释,foobared改为 自己的password , 我测试的时候用的是默认的 foobared 2.启动red ...

  4. 记一次sqoop同步到mysql

    工作中需要用到将hive的数据导一份到mysql中,需求是这样的:hive每天会产生一份用户标签(tag)发生变化的结果表user_tag,这份结果同步到mysql中,并且保持一份全量表,存储当前用户 ...

  5. android中与SQLite数据库相关的类

    为什么要在应用程序中使用数据库?数据库最主要的用途就是作为数据的存储容器,另外,由于可以很方便的将应用程序中的数据结构(比如C语言中的结构体)转化成数据库的表,这样我们就可以通过操作数据库来替代写一堆 ...

  6. 项目Alpha冲刺Day2

    一.会议照片 二.项目进展 1.今日安排 初步搭建后台框架,根据昨天的最终设计再修改原型,成功使用powerDesigner导出sql. 2.问题困难 使用了比较多的框架,而且是首次尝试纯java配置 ...

  7. 学号:201621123032 《Java程序设计》第7周学习总结

    1:本周学习总结 1.1:思维导图:Java图形界面总结 2:书面作业 2.1: GUI中的事件处理 2.1.1: 写出事件处理模型中最重要的几个关键词 事件:如鼠标单击,滑动,输入汉字等. 事件源: ...

  8. TRY

  9. 【iOS】Swift GCD-下

    欢迎来到本GCD教程的第二同时也是最终部分! 在第一部分中,你学到了并发,线程以及GCD的工作原理.通过使用dispatch_barrrier和dispatch_sync,你做到了让PhotoMana ...

  10. 在bootstrap中让竖向排列的输入框水平排列

    在bootstrap中可以使用自带的样式标记来控制样式,但是同时可以利用最原始的css样式来解决达到需求 如下所示可以看出来两个inline-block就可以使得两个水平排列 block和inline ...