- 浏览: 1578586 次
- 性别:
- 来自: 北京
文章分类
最新评论
-
nich002:
原网站失效了。撸主简单粗暴的复制过来,可读性极差!差评!
Apache配置详解(最好的APACHE配置教程) -
107x:
不错,谢谢!
LINUX下查看文件夹下的文件个数! -
Hypereo:
好你妹,连个格式都没有!
Apache配置详解(最好的APACHE配置教程) -
resteater:
代码排版感觉有点乱!收发信息代码可读性不强!请问第一次发服务器 ...
java socket例子 -
resteater:
代码排版感觉有点乱!收发信息代码可读性不强!请问第一次发服务器 ...
java socket例子
From: http://tech.sina.com.cn/s/2008-03-13/08232074826.shtml
作者:sixth
Crontab是一个很方便的在unix/linux系统上定时(循环)执行某个任务的程序
使用cron服务,用 service crond status 查看 cron服务状态,如果没有启动则 service crond start启动它,
cron服务是一个定时执行的服务,可以通过crontab 命令添加或者编辑需要定时执行的任务:
crontab -u //设定某个用户的cron服务,一般root用户在执行这个命令的时候需要此参数
crontab -l //列出某个用户cron服务的详细内容
crontab -r //删除没个用户的cron服务
crontab -e //编辑某个用户的cron服务
比如说root查看自己的cron设置:crontab -u root -l
再例如,root想删除fred的cron设置:crontab -u fred -r
在编辑cron服务时,编辑的内容有一些格式和约定,输入:crontab -u root -e
进入vi编辑模式,编辑的内容一定要符合下面的格式:*/1 * * * * ls >> /tmp/ls.txt
编辑/etc/crontab文件,在末尾加上一行: 30 5 * * * root init 6 这样就将系统配置为了每天早上5点30自动重新启动。
需要将crond设置为系统启动后自动启动的服务,可以在/etc/rc.d/rc.local 中,在末尾加上
service crond start
如果还需要在系统启动十加载其他服务,可以继续加上其他服务的启动命令。
比如: service mysqld start
基本用法:
1. crontab -l
列出当前的crontab任务
2. crontab -d
删除当前的crontab任务
3. crontab -e (solaris5.8上面是 crontab -r)
编辑一个crontab任务,ctrl_D结束
4. crontab filename
以filename做为crontab的任务列表文件并载入
crontab file的格式:
crontab 文件中的行由 6 个字段组成,不同字段间用空格或 tab 键分隔。前 5 个字段指定命令要运行的时间
分钟 (0-59)
小时 (0-23)
日期 (1-31)
月份 (1-12)
星期几(0-6,其中 0 代表星期日)
第 6 个字段是一个要在适当时间执行的字符串
例子:
#MIN HOUR DAY MONTH DAYOFWEEK COMMAND
#每天早上6点10分
10 6 * * * date
#每两个小时
0 */2 * * * date (solaris 5.8似乎不支持此种写法)
#晚上11点到早上8点之间每两个小时,早上8点
0 23-7/2,8 * * * date
#每个月的4号和每个礼拜的礼拜一到礼拜三的早上11点
0 11 4 * mon-wed date
#1月份日早上4点
0 4 1 jan * date
补充:在使用crontab的时候,要特别注意的是运行脚本中能够访问到的环境变量和当前测试环境中的环境变量未必一致,一个比较保险的做法是在运行的脚本程序中自行设置环境变量(export)
(1)先建一个文件crond.txt如下, 每天早上5点36分重新启动
36 5 * * * reboot
(2)上传到/opt目录
(3)运行命令
crontab /opt/crond.txt
crontab -l
让配置文件生效:如果让配置文件生效,还得重新启动cron,切记,既然每个用户下的cron配置文件修改后。也要重新启动cron服务器。
在Fedora 和Redhat中,我们应该用;
[root@localhost ~]# /etc/init.d/crond restart
如果让crond 在开机时运行,应该改变其运行级别;
[root@localhost ~]# chkconfig --levels 35 crond on
service crond status 查看 cron服务状态,如果没有启动则 service crond start启动它, cron服务是一个定时执行的服务,可以通过crontab 命令添加或者编辑需要定时执行的任务
Crontab文件的每一行由六个域(minutes、hours、day of month、month、day of week、 command)组 成,域之间用空格或Tab分开,其中:
minutes: 分钟域,值的范围是0到59
hours: 小时域,值的范围是0到23
day of month: 日期,值的范围是1到31
month: 月份,值的范围是1到12
day of week: 星期,值的范围是0到6,星期日值为0
command: 所要运行的命令
如果一个域是*,表明命令可以在该域所有可能的取值范围内执行。
如果一个域是由连字符隔开的两个数字,表明命令可以在两个数字之间的范围内执行(包括两个数字 本身)。
如果一个域是由逗号隔开的一系列值组成的,表明命令可以在这些值组成的范围内执行。
如果日期域和星期域都有值,则这两个域都有效。
编写一个文件,用以启动自动备份进程。
cd /opt
touch reboot.txt
在reboot.txt中添加一下内容:
0 4 * * * reboot
crontab /opt/reboot.txt
用crontab -e编辑定时操作,例如加入下行命令:
用crontab -l命令来查看
注意:需要启动服务(添加在rc.local中)
重启crond任务
/etc/init.d/cron restart (ubuntu下)
第一种 在Fedora或Redhat 等以RPM包管理的系统中;
[root@localhost ~]# /etc/init.d/crond start
[root@localhost ~]# /etc/init.d/crond stop
[root@localhost ~]# /etc/init.d/crond restart
/etc/rc.d/init.d/crond restart
命令简介
crontab-操作每个用户的守护程序和该执行的时间表。
部分参数说明
crontab file [-u user]-用指定的文件替代目前的crontab。
crontab-[-u user]-用标准输入替代目前的crontab.
crontab-1[user]-列出用户目前的crontab.
crontab-e[user]-编辑用户目前的crontab.
crontab-d[user]-删除用户目前的crontab.
crontab-c dir- 指定crontab的目录。
crontab文件的格式:M H D m d cmd.
M: 分钟(0-59)。
H:小时(0-23)。
D:天(1-31)。
m: 月(1-12)。
d: 一星期内的天(0~6,0为星期天)。
cmd要运行的程序,程序被送入sh执行,这个shell只有USER,HOME,SHELL这三个环境变量。
下面是一个例子文件:
#MIN HOUR DAY MONTH DAYOFWEEK COMMAND #每天早上6点 106* * * date #每两个小时 0*/2* * * date #晚上11点到早上8点之间每两个小时,早上部点 0 23-7/2,8* * * date #每个月的4号和每个礼拜的礼拜一到礼拜三的早上11点 0 11 4* mon-wed date #1月份日早上4点 0 4 1 jan* date 范例 lark:~>crontab-1 列出用户目前的crontab. #MIN HOUR DAY MONTH DAYOFWEEK COMMAND 10 6* * * date 0*/2* * * date 0 23-7/2,8 * * * date lark:~> |
发表评论
-
nuttcp(8) - 网络测速工具
2011-10-08 14:08 3388http://linux.die.net/man/8/nutt ... -
SHELL重定向【转】
2011-08-23 09:51 1740From:http://hi.baidu.com/fywsp/ ... -
NodeJs相关资料
2011-08-18 14:55 3018NodeJs获取参数: proces ... -
使用Shell对数字按照出现次数排序
2011-02-11 18:57 2198今天遇到一个需求: 在一个文本中有上万的i ... -
shell脚本整理
2009-11-13 12:36 2429fdisk -l mkfs.ext2 /dev/ ... -
php socket链接超时问题
2009-09-16 13:50 2943今天处理一个流程时发现使用HTTP/client.php连接时 ... -
wget手册 wget命令使用方法
2009-07-17 20:24 1647From: http://jimey.com/2009/03/ ... -
CentOS笔记:svn命令行使用说明
2009-06-09 12:14 2326From: http://www.svn8.com/SVNSY ... -
LINUX下查看文件夹下的文件个数!
2009-05-16 20:41 21212From:http://hi.baidu.com/biduo/ ... -
使用wget获取一个需要登陆的页面
2009-05-07 19:07 4023应用判断是否一个用户是否登录主要是通过cookie,而浏 ... -
linux脚本技巧总结
2009-04-27 17:29 1381chown mysql:mysql -R abc 修改 ... -
telnet退出的命令
2009-03-26 19:41 10970折腾了半天总算知道如何退出telnet了,很简单:ctrl+] ... -
Linux下常用压缩格式的压缩与解压方法
2009-02-25 21:39 1184From:http://www.21ds.net/articl ... -
TRACEROUTE的介绍与功能
2009-02-20 23:24 1401From: http://www.linkwan.com/gb ... -
apache + resin的多机部署方案实现方法
2009-02-19 11:29 1250From:http://www.cppblog.com/coo ... -
linux下常用压缩格式的压缩与解压方法
2008-11-07 13:54 996From: http://doc.linuxpk.com/19 ... -
Linux下Resin+JSP+MySQL的安装和配置
2008-11-07 10:37 1612From: http://www.webjx.com/html ... -
linux下安装软件
2008-11-07 10:08 1377yum介绍:http://www.onlyblog.com/b ... -
linux的read命令[z]
2008-09-19 10:03 11301From: http://www.linuxsense.or ... -
Tree命令
2008-08-07 15:03 1781用来获取文件目录结构,在window下的用法为:tree bl ...
评论
呵呵。。。