Debian的定时执行命令Crontab
转载:http://i.592.net/?post=276
Debian的定时执行命令Crontab,这个相当于Windows的计划任务
想要让Debian定时执行命令就得靠crontab了!
它的功能类似微软的计划任务,可以在您设定的时间执行你想要的命令。
通过编写设定文件可以组合出复杂的执行时段,让命令的执行更加有效率。
cron设置文件在Debian系统下的位置
/etc/crontab
大致内容如下:
01 |
# /etc/crontab: system-wide crontab |
02 |
# Unlike any other crontab you don 't have to run the `crontab' |
03 |
# command to install the new version when you edit this file. |
04 |
# This file also has a username field, that none of the other crontabs do . |
05 |
06 |
SHELL=/bin/sh |
07 |
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin |
08 |
09 |
# m h dom mon dow user command |
10 |
17 * * * * root run-parts --report /etc/cron.hourly |
11 |
25 6 * * * root test -x /usr/sbin/anacron || run-parts --report /etc/cron.daily |
12 |
47 6 * * 7 root test -x /usr/sbin/anacron || run-parts --report /etc/cron.weekly |
13 |
52 6 1 * * root test -x /usr/sbin/anacron || run-parts --report /etc/cron.monthly |
14 |
0 20 1 * * root /usr/bin/updatedb |
15 |
# |
需要设定的是 # m h dom mon dow user command 下面的部份
由左至右相对应的意思为:
分0-59 时0-23 日1-31 月1-12 周0-7 执行命令的用户 命令
其中比较有意思的是:周,0和7都代表星期日
而可以使用的特殊符号有
* (星号) 代表所有时间都接受
, (逗号) 代表同一个分类可以有多少个值
- (减号) 代表在这个时段内执行
/n 代表每n个时间就执行一次
范例:
30 12 * * * command: <em>每天12:30执行command</em>
0 6,12 15 * * command:<em>每月15日的6:00和12:00执行command</em>
10 8 1-15 6 * command:<em>每年6月1至15日的8:10执行command</em>
*/5 * * * 7 command: <em>星期日每隔五分钟执行一次command</em>
定时器语法:
就是上面计划任务的第一部分。它决定了何时执行计划任务。
它包含5部分:
1.分钟(0-59)
2.小时(0-23)
3.一个月的哪一天(1-31)
4.一年中的哪个月(1-12)
5.星期几(0是星期天)
星号 如果某个部分出现的是星号而不是数字,就是说明这个部分表示的时间全部会执行。
可能一时不太容易说清楚,再看例子吧。
示例:
1、下面的计划任务会一直运行
* * * * * [command]
2、下面的计划任务会在每个小时的0分时运行(就是每小时执行一次)
0 * * * * [command]
3、下面依旧是一个每小时运行一次的计划任务。不过是在每个小时的一刻钟时运行的(1:15,2:15.。。)
15 * * * * [command]
4、下面的计划任务每天执行一次,在2:30分
30 2 * * * [command]
5、下面的计划任务是在每个月2号的午夜执行(比如:2010年2月2日00:00)
0 0 2 * * [command]
6、下面的计划任务会在每周一的每个小时0分钟时执行一次
0 * * * 1 [command]
7、下面的会每小时运行3次,在0分,10分,和20分时
0,10,20 * * * * [command]
8、下面是用除号“/”表示每多少运行一次。
*/5 * * * * [command] 每5分钟运行一次
00 */2 * * * [command] 每2小时运行一次 (* */2 * * * [command] 这种写法是错误的!)
*/1 * * * * root wget -O /var/log/cron.txt
http://www.592.net/test.php 每分钟访问网站某PHP脚本一次,检查是否每分钟自动运行了PHP,可以查看
var/log/cron.txt文件,看下是否有网站PHP返回的内容就可以了!
9、还可以用“-”表示一个范围,如下表示5到10点的每个整点运行一次
0 5-10 * * * [command]
10、另外还有一个特殊的时间关键字“@reboot”,就是每次重启服务器时运行计划任务
@reboot [command]
设定和管理计划任务
编辑Crontab,来设定计划任务。使用下面的命令,会在vi 里打开crontab的内容以供编辑:
crontab -e
如果你只想看看,不需要编辑,可以使用以下的命令
crontab -l
要删除crontab的内容,就是删除所有的计划任务,可以这样:
crontab -r
cron是个linux下的定时执行工具,能在无需人工干预的情况下运行作业。由于Cron 是Linux的内置服务,但他不自动起来,能用以下的方法启动、关闭这个服务:
编辑/etc/crontab 文件配置cron
cron服务每分钟不仅要读一次 /var/spool/cron 内的所有文件,还需要读一次 /etc/crontab,因此我们配置这个文件也能运用cron服务做一些事情。用crontab配置是针对某个用户的,而编辑/etc/crontab是针对系统的任务。此文件的文件格式是:
SHELL=/bin/bash
PATH=/sbin:/bin:/usr/sbin:/usr/bin
MAILTO=root //如果出现错误,或者有数据输出,数据作为邮件发给这个帐号
HOME=/ //使用者运行的路径,这里是根目录
# run-parts
01 * * * * root run-parts /etc/cron.hourly //每小时执行/etc/cron.hourly内的脚本
02 4 * * * root run-parts /etc/cron.daily //每天执行/etc/cron.daily内的脚本
22 4 * * 0 root run-parts /etc/cron.weekly //每星期执行/etc/cron.weekly内的脚本
42 4 1 * * root run-parts /etc/cron.monthly //每月去执行/etc/cron.monthly内的脚本
大家注意"run-parts"这个参数了,如果去掉这个参数的话,后面就可以写要运行的某个脚本名,而不是文件夹名了。
重启命令:
Debian
/etc/init.d/cron restart
Linux
/etc/rc.d/init.d/crond restart
Debian的定时执行命令Crontab的更多相关文章
- linux后台执行命令crontab
有如下几种方式: crontab at & nohup 1. crontab 定时执行任务 # crontab -e //编辑crontab配置文件 Select an editor. To ...
- linux定时执行任务crontab命令用法
linux系统的定时任务是由 cron (crond) 这个系统服务来控制的.Linux 系统上面原本就有非常多的计划性工作,因此这个系统服务是默认启动的.另外, 由于使用者自己也可以设置计划任务,所 ...
- Linux下定时执行任务(crontab命令)
1.循环执行的计划任务 linux下面有atd和crond两种计划任务,其中,atd服务使用的at命令只能执行一次,而crond服务使用的crontab定义的命令,是循环作用的,所以crond才符合我 ...
- linux 定时执行任务 crontab
欲编写定时任务访问网页和打开图片 原来写法为 #!/bin/bash #可以执行 echoecho "Hello" > dir/file.txt #不可以执行 xdg-ope ...
- bat 批处理脚本定时执行命令
有个需求,需要每天定时执行下某个任务,一天一次.由于工作机器环境问题,没有办法设置windows 定时任务.查找资料并完成如下脚本. 功能:每天定时执行一次任务. 复制如下脚本,到一个test.vbs ...
- bat实现每天定时执行命令[windows底下每天重启一下Nginx]
--试验通过--Windows环境脚本名称:restart.bat脚本内容: @echo offtaskkill /f /fi "IMAGENAME eq nginx.exe"cd ...
- ubuntu定时执行任务——crontab的使用
先补上几个链接,后续再总结 #参考# http://www.cnblogs.com/kaituorensheng/p/4494321.html http://blogread.cn/it/articl ...
- Linux下的crontab定时执行任务命令详解
在LINUX中,周期执行的任务一般由cron这个守护进程来处理[ps -ef|grep cron].cron读取一个或多个配置文件,这些配置文件中包含了命令行及其调用时间.cron的配置文件称为“cr ...
- (二)Linux下的crontab定时执行任务命令详解
在LINUX中,周期执行的任务一般由cron这个守护进程来处理[ps -ef|grep cron].cron读取一个或多个配置文件,这些配置文件中包含了命令行及其调用时间.cron的配置文件称为&qu ...
随机推荐
- NServiceBus-进阶
下载 在本教程中我们将创建一个非常简单的订购系统,将从客户机向服务器发送消息.订单系统包括三个项目:客户端.服务器和消息,来完成这个任务,我们将执行以下步骤: 创建客户端项目 创建项目的消息 创建服务 ...
- poj 3006 Dirichlet's Theorem on Arithmetic Progressions
题目大意:a和d是两个互质的数,则序列a,a+d,a+2d,a+3d,a+4d ...... a+nd 中有无穷多个素数,给出a和d,找出序列中的第n个素数 #include <cstdio&g ...
- <转>Linux环境进程间通信(二): 信号(上)
原文链接:http://www.ibm.com/developerworks/cn/linux/l-ipc/part2/index1.html 原文如下: 一.信号及信号来源 信号本质 信号是在软件层 ...
- 成功获取并更改中兴F660光猫的超级用户密码解除四台限制
上次雷雨后更换的中兴的F660光猫还是很不错的,很稳定,不过超级密码确实记不住,找了些资料,今天成功的更改了密码,简要的写出过程以备下次参考: 第一步:获取超级密码(已知用户名telecomadmin ...
- 巧解Tomcat中JVM内存溢出问题
你对Tomcat 的JVM内存溢出问题的解决方法是否了解,这里和大家分享一下,相信本文介绍一定会让你有所收获. tomcat 的JVM内存溢出问题的解决 最近在熟悉一个开发了有几年的项目,需要把数据库 ...
- MVC个人认为的终极分页
//传入要查询的字段,查询条件(例如根据姓名查看数据的数据筛选),按照什么排序,页码,信息条数 //T:要操作的类型 //Tkey:根据什么类型来排,ID的话返回的是int类型,但是name的话又会返 ...
- django admin site配置(二)
1. ModelAdmin.inlines 将有外键的子类包含进视图 ,实例: class Author(models.Model): name = models.CharField(max_leng ...
- POJ3041Asteroids(二分图最少顶点覆盖)
最少顶点覆盖 = 二分图最大匹配 证明见 http://hi.baidu.com/keeponac/item/111e3438988c786b7d034b56
- DNS原理及其解析过程(转)
转自(http://369369.blog.51cto.com/319630/812889) 网络通讯大部分是基于TCP/IP的,而TCP/IP是基于IP地址的,所以计算机在网络上进行通讯时只能识别如 ...
- php连接oracle数据库转载
php连接oracle数据库及查询数据的方法 投稿:shichen2014 字体:[增加 减小] 类型:转载 时间:2014-12-29 这篇文章主要介绍了php连接oracle数据库及查询数据的方法 ...