crontab-e
步入一个vi编辑界面
在最后一行加上
*/30****netstat>/tmp/net.log
表示每隔30分就执行netstat命令如何安装LINUX,并把执行结果存入net.log中。
Crontab是一个很便捷的在unix/linux系统上定时(循环)执行某个任务的程序
使用cron服务linux定时自动重启程序 crontab,用servicecrondstatus查看cron服务状态,假如没有启动则servicecrondstart启动它,
cron服务是一个定时执行的服务,可以通过crontab命令添加或则编辑须要定时执行的任务:
crontab-u//设定某个用户的cron服务,通常root用户在执行这个命令的时侯须要此参数
crontab-l//列举某个用户cron服务的详尽内容
crontab-r//删掉某个用户的cron服务
crontab-e//编辑某个用户的cron服务
crontab-ri//删掉用户的Crontab文件前给提示
//crontab-r//从Crontab目录中删掉用户的Crontab文件
例如说root查看自己的cron设置:crontab-uroot-l
再比如,root想删掉fred的cron设置:crontab-ufred-r
在编辑cron服务时,编辑的内容有一些格式和约定,输入:crontab-uroot-e
步入vi编辑模式,编辑的内容一定要符合下边的格式:*/1****ls>>/tmp/ls.txt
编辑/etc/crontab文件,在末尾加上一行:305***rootinit6这样就将系统配置为了每晚下午5点30手动重新启动。
须要将crond设置为系统启动后手动启动的服务,可以在/etc/rc.d/rc.local中,在末尾加上
servicecrondstart
若果还须要在系统启动十加载其他服务,可以继续加上其他服务的启动命令。
例如:servicemysqldstart
基本用法:
1.crontab-l
列举当前的crontab任务
2.crontab-d
删掉当前的crontab任务
3.crontab-e(solaris5.8里面是crontab-r)
编辑一个crontab任务,ctrl_D结束
4.crontabfilename
以filename做为crontab的任务列表文件并载入
crontabfile的格式:
crontab文件中的行由6个数组组成,不同主键间用空格或tab键分隔。前5个数组指定命令要运行的时间
分钟(0-59)
小时(0-23)
日期(1-31)
月份(1-12)
礼拜几(0-6,其中0代表礼拜日)
第6个数组是一个要在适当时间执行的字符串
事例:
#MINHOURDAYMONTHDAYOFWEEKCOMMAND
#每晚早晨6点10分
106***date
#每两个小时
0*/2***date(solaris5.8虽然不支持此种写法)
#下午11点到晚上8点之间每两个小时,上午8点
023-7/2,8***date
#每位月的4号和每位星期的星期一到星期三的下午11点
0114*mon-weddate
#1月份日下午4点
041jan*date
补充:在使用crontab的时侯,要非常注意的是运行脚本中才能访问到的环境变量和当前测试环境中的环境变量未必一致,一个比较保险的做法是在运行的脚本程序中自行设置环境变量(export)
(1)先建一个文件crond.txt如下,每晚下午5点36分重新启动
365***reboot
(2)上传到/opt目录
(3)运行命令
crontab/opt/crond.txt
crontab-l
让配置文件生效:假若让配置文件生效linux端口映射,还得重新启动cron,谨记,既然每位用户下的cron配置文件更改后。也要重新启动cron服务器。
在Fedora和Redhat中linux定时自动重启程序 crontab,我们应当用;
[root@localhost~]#/etc/init.d/crondrestart
若果让crond在开机时运行,应当改变其运行级别;
[root@localhost~]#chkconfig--levels35crondon
servicecrondstatus查看cron服务状态,假如没有启动则servicecrondstart启动它,cron服务是一个定时执行的服务,可以通过crontab命令添加或则编辑须要定时执行的任务
Crontab文件的每一行由六个域(minutes、hours、dayofmonth、month、dayofweek、command)组成,域之间用空格或Tab分开,其中:
minutes:分钟域,值的范围是0到59
hours:小时域,值的范围是0到23
dayofmonth:日期,值的范围是1到31
month:月份,值的范围是1到12
dayofweek:礼拜,值的范围是0到6,礼拜日值为0
command:所要运行的命令
假如一个域是*,表明命令可以在该域所有可能的取值范围内执行。
假如一个域是由连字符隔开的两个数字,表明命令可以在两个数字之间的范围内执行(包括两个数字本身)。
假如一个域是由冒号隔开的一系列值组成的,表明命令可以在这种值组成的范围内执行。
假如日期域和礼拜域都有值,则这两个域都有效。
编撰一个文件,用以启动手动备份进程。
cd/opt
touchreboot.txt
在reboot.txt中添加一下内容:
04***reboot
crontab/opt/reboot.txt
用crontab-e编辑定时操作,比如加入下行命令:
用crontab-l命令来查看
注意:须要启动服务(添加在rc.local中)
重启crond任务
/etc/init.d/cronrestart(ubuntu下)
第一种在Fedora或Redhat等以RPM包管理的系统中;
[root@localhost~]#/etc/init.d/crondstart
[root@localhost~]#/etc/init.d/crondstop
[root@localhost~]#/etc/init.d/crondrestart
/etc/rc.d/init.d/crondrestart
命令简介
crontab-操作每位用户的守护程序和该执行的时间表。
部份参数说明
crontabfile[-uuser]-用指定的文件代替目前的crontab。
crontab-[-uuser]-用标准输入取代目前的crontab.
crontab-1[user]-列举用户目前的crontab.
crontab-e[user]-编辑用户目前的crontab.
crontab-d[user]-删掉用户目前的crontab.
crontab-cdir-指定crontab的目录。
crontab文件的格式:MHDmdcmd.
M:分钟(0-59)。
H:小时(0-23)。
D:天(1-31)。
m:月(1-12)。
d:一礼拜内的天(0~6,0为礼拜天)。
cmd要运行的程序,程序被送入sh执行,这个shell只有USER,HOME,SHELL这三个环境变量。
下边是一个反例文件:
#MINHOURDAYMONTHDAYOFWEEKCOMMAND
#每晚早晨6点
106***date
#每两个小时
0*/2***date
#下午11点到晚上8点之间每两个小时,上午部点
023-7/2,8***date
#每位月的4号和每位星期的星期一到星期三的下午11点
0114*mon-weddate
#1月份日下午4点
041jan*date
范例
lark:~>crontab-1列举用户目前的crontab.
#MINHOURDAYMONTHDAYOFWEEKCOMMAND
106***date
0*/2***date
023-7/2,8***date