2024年3月6日发(作者:)

1、设置开机自动启动crond计划任务服务。

在/etc/rc.d/这个脚本的末尾加上:

/sbin/service crond start

关于crond服务的重启、停止等命令如下

/sbin/service crond start //启动服务

/sbin/service crond stop //关闭服务

/sbin/service crond restart //重启服务

/sbin/service crond reload //重新载入配置

2、语法如下:

示例:每天5:30执行ls命令,并把结果输出到/jp/test文件中

30 5 * * * ls>/jp/test 2>&1

*/15 ****ls每15分钟执行一次ls命令

3、编辑计划任务

1、在命令行输入: crontab -e 然后添加相应的任务,wq存盘退出。

2、直接编辑/etc/crontab文件,即vi /etc/crontab,添加相应的任务

11 2 21 10 * rm -rf /mnt/fb

4、crond服务的一些常用参数

cron服务提供crontab命令来设定cron服务的,以下是这个命令的一些参数与说明:

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

例如编辑root 用户的crontd服务,则输入:crontab -u root –e

关于计划任务综合篇

二、cron服务

上面已经简单介绍了cron的一些进程和控制。下面我们来看看cron怎么实现。

相对与at,cron的优点就是能够周期性的执行某个命令,at却只能执行一次

cron的后台进程名字是crond ,cron也是system V的服务,所以我们可以service

crondstart|stop来启动和关闭此服务,也可以使用chkconfig或者ntsysv来选择cron服务的默认开启,这些命令在以前我们都讲过的

#crontab -e 编辑当前用户的cron表

#crontab -l 查看当前用户的cron表

#crontab -r 删除当前用户的cron进程

#crontab -u 用户名以某用户的身份来控制cron表

还有个重要的知识点,就是当用户的计划任务建立后是存放在/var/spool/cron这个目录

当使用crontab -e编辑当前用户的cron表后,会出现一个vi文件,cron的格式是这样的。分成两列,左边是时间,右边是运行的命令。时间是由5个部分组成。

例:

* * * * * wall hello everyone

5个星号分别代表:minute hour day-of-month month-of-year day-of-week 分时日月周,而wall hello everyone 这是命令内容。上面的意识是每分每小时每天每月每周广播hello

everyone。具体时间大家可以自己定义。如果要每两分钟发送就用*/2代替第一个*。也可以是用具体时间来表示。

Crontab–e 编辑的任务不要加入用户名

第一个*星号代表个小时的第几分钟:minute 范围是从0-59

第二个*星号代表每天的第几个小时:hour 范围是从0-23

第三个*星号代表每月的第几个日:day-of-month 范围从1-31

第四个*星号代表没年的第几个月:month-of-year 范围从1-12

第五个*星号代表每周的星期几:day-of-week 范围从0-6,其中0表示星期日

用户名:也就是执行程序要通过哪个用户来执行,这个一般可以省略;

命令:执行的命令和参数。

如果我要表示9月10日25分执行lsvar/spool/cron任务怎么表示?

25 * 10 9 * lsvar/spool/cron

*/1 * * * 0 wall Hello

*/ 表示每多少分钟执行一次哈~

当制定了cron任务后,可以用crontab -l查看, 也可以到/var/spool/cron/目录查看。里面的文件名字就是对应用户的cron任务

可以使用crontab -r 来删除当前用户的cron

vim /etc/crontab与crontab -e写入的定时运行有什么区别?

vim /etc/crontab:是系统级别定义的crontab,/etc/crontab的所有者和组都是root

crontab -e :是用户自定义的crontab,是所有的用户都可以写入的

两种方法记录的位置不一样,一个在/etc/