使用crontab命令定时执行脚本

时间:2022-11-20 09:08:33

我不喜欢一上来就讲理论,还是来点实际的。


前提:

1. 系统为:CentOS-6.7-x86_64-minimal.iso

2. 用户名为oldmtn


操作:

a. 进入/home/oldmtn,使用vi创建一个test.c文件,其内容如下:

#include <stdio.h>

int main()
{
<span style="white-space:pre">	</span>FILE* f = fopen("/home/oldmtn/aaa.txt", "wb");
<span style="white-space:pre">	</span>fclose(f);

<span style="white-space:pre">	</span>return 1;
}
使用: gcc -Wall test.c -o test生成一个test文件。


b.编译一个crontab文件davecron,内容如下:

* * * * * /home/oldmtn/test

上面的命令表示,每分钟执行一次/home/oldmtn/test命令

c. 执行脚本

crontab davecron
这样每分钟执行一次test,该test在/home/oldmtn/生成一个aaa.txt文件。

d. 禁止接受crontab发送的邮件

crontab的默认输出对象是邮件
因此,你要改变crontab的默认输出
   00 3 * * *   bash  /home/xxx/bakup >/dev/null 2>&1
比如
这样,会把输出信息放到系统的黑洞设备  /dev/null  也就是丢弃掉输出信息
这样,也不会发邮件给你了


e. 如何停止crontab程序

crontab -r 表示删除用户的定时任务,当执行此命令后,所有用户下面的定时任务会被删除,执行crontab -l后会提示用户:“no crontab for admin”



至于具体的,详细的用法,请见下面2个参考。


参考:

1. http://www.cnblogs.com/peida/archive/2013/01/08/2850483.html

2.http://www.cnblogs.com/kerrycode/p/3238346.html