有时候我们需要系统在某某时间自动去做一件事情,windows里面我们可以做计划任务,而在linux和solaris上,可以使用cron达到相识的效果。
例如,表示每月1、10、22日的4:45运行/apps/bin目录下的backup.sh
45 4 1,10,22 * * /apps/bin/backup.sh
下面是一个完整的例子编写过程。例子的结果是在系统上每分钟都自动将当前时间写入到一个叫cronLog.txt的文件中
1.写一个用来自动运行的sh文件 hello.sh
#!/bin/bash date >> /export/home/weichao/cronLog.txt
(* 注: ">>" 是追加在文件末尾, ">"是覆盖原文件)
2.在控制台中修改文件的执行权限
输入命令:
bash$: chmod +x hello.sh
3.在控制台中将hello.sh的任务添加到crontab中
输入命令:
bash$: crontab -e
在打开的crontab中添加
* * * * * /export/home/weichao/hello.sh
代表每天每过1分钟都调用一次hello.sh。也可以写成: 1~59 * * * * /export/home/weichao/hello.sh
4. OK,现在每经过1分钟控制台都会发一个mail提醒你有消息。这时候你可以打开/export/home/weichao/cronLog.txt
查看,可以发现每过1分钟就会添加一条信息进去。