欢迎来到天天文库
浏览记录
ID:42769836
大小:51.50 KB
页数:6页
时间:2019-09-21
《crontab用法详解》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、1.crontab的用法crontab简述:crontab命令的功能是在一定的时间间隔调度一些命令的执行。在/etc目录下有一个crontab文件,这里存放有系统运行的一些调度程序。每个用户可以建立自己的调度crontab。crontab命令 crontab命令用于安装、删除或者列出用于驱动cron后台进程的表格。也就是说,用户把需要执行的命令序列放到crontab文件中以获得执行。每个用户都可以有自己的crontab文件。下面就来看看如何创建一个crontab文件。 在/var/spool/cron下的crontab文件不可
2、以直接创建或者直接修改。crontab文件是通过crontab命令得到的。现在假设有个用户名为foxy,需要创建自己的一个crontab文件。首先可以使用任何文本编辑器建立一个新文件,然后向其中写入需要运行的命令和要定期执行的时间。 然后存盘退出。假设该文件为/tmp/test.cron。再后就是使用crontab命令来安装这个文件,使之成为该用户的crontab文件。键入: crontabtest.cron 这样一个crontab文件就建立好了。可以转到/var/spool/cron目录下面查看,发现多了一个foxy文件。
3、这个文件就是所需的crontab文件。用more命令查看该文件的内容可以发现文件头有三行信息: #DONOTEDITTHISFILE-editthemasterandreinstall. #(test.croninstalledonMonFeb2214:20:201999) #(cronversion--$Id:crontab.c,v2.131994/01/1703:20:37vivieExp$) 大概意思是: #切勿编辑此文件——如果需要改变请编辑源文件然后重新安装。 #test.cron文件安装时间:14:20:2
4、002/22/1999 如果需要改变其中的命令内容时,还是需要重新编辑原来的文件,然后再使用crontab命令安装。 可以使用crontab命令的用户是有限制的。如果/etc/cron.allow文件存在,那么只有其中列出的用户才能使用该命令;如果该文件不存在但cron.deny文件存在,那么只有未列在该文件中的用户才能使用crontab命令;如果两个文件都不存在,那就取决于一些参数的设置,可能是只允许超级用户使用该命令,也可能是所有用户都可以使用该命令。 crontab命令的语法格式如下: crontab[-uuser]
5、file crontab[-uuser]{-l
6、-r
7、-e} 第一种格式用于安装一个新的crontab文件,安装淳褪莊ile所指的文件,如果使用“-”符号作为文件名,那就意味着使用标准输入作为安装来源。 -u如果使用该选项,也就是指定了是哪个具体用户的crontab文件将被修改。如果不指定该选项,crontab将默认是操作者本人的crontab,也就是执行该crontab命令的用户的crontab文件将被修改。但是请注意,如果使用了su命令再使用crontab命令很可能就会出现混乱的情况。所以如果是使用了su命令,最好使用-
8、u选项来指定究竟是哪个用户的crontab文件。 -l在标准输出上显示当前的crontab。 -r删除当前的crontab文件。 -e使用VISUAL或者EDITOR环境变量所指的编辑器编辑当前的crontab文件。当结束编辑离开时,编辑后的文件将自动安装。 [例7] #crontab-l#列出用户目前的crontab。 106***date 0*/2***date 023-7/2,8***date # 在crontab文件中如何输入需要执行的命令和时间。该文件中每行都包括六个域,其中前五个域是指定命令被执行的
9、时间,最后一个域是要被执行的命令。每个域之间使用空格或者制表符分隔。格式如下: minutehourday-of-monthmonth-of-yearday-of-weekcommands 第一项是分钟,第二项是小时,第三项是一个月的第几天,第四项是一年的第几个月,第五项是一周的星期几,第六项是要执行的命令。这些项都不能为空,必须填入。如果用户不需要指定其中的几项,那么可以使用*代替。因为*是统配符,可以代替任何字符,所以就可以认为是任何时间,也就是该项被忽略了。在表4-1中给出了每项的合法范围。 表4-1 指定时间的合法范围
10、 时间 合法值 minute 00-59 hour 00-23,其中00点就是晚上12点 day-of-month 01-31 month-of-year 01-12 day-of-week 0-6,其中周日是0 这样用户就
此文档下载收益归作者所有