Linux教程(11)- linux中的计划作业
周期性计划作业–cron
cron:是一个进程。可以让linux周期性的执行某一命令。
crontab是一个命令,可以设置linux周期性的执行某一命令。
-u :设置某一个用户的周期性工作—root权限;
-e :编辑 crontab 的工作内容
-l :查阅 crontab 的工作内容
-r :移除所有的 crontab 的工作内容,若仅要移除一项,请用 -e 去编辑
一行代表一个任务
minute hour day month week command
minute: 表示分钟,可以是从0到59之间的任何整数。
hour:表示小时,可以是从0到23之间的任何整数。
day:表示日期,可以是从1到31之间的任何整数。
month:表示月份,可以是从1到12之间的任何整数。
week:表示星期几,可以是从0到7之间的任何整数,这里的0或7代表星期日。
command:要执行的命令,可以是系统命令,也可以是自己编写的脚本文件。
每个晚上10点,提示用户可以去睡觉了
每分钟,查看/var/log/cron日志文件有没有发生过变化
/etc/crontab配置文件讲解
第一行SHELL变量指定了系统要使用哪个shell,这里是bash。
第二行PATH变量指定了系统执行命令的路径。
第三行MAILTO变量指定了crond的任务执行信息将通过电子邮件发送给root用户,如果MAILTO变量的值为空,则表示不发送任务执行信息给用户。
当使用者使用 crontab 这个命令来创建工作排程之后,该项工作就会被纪录到 /var/spool/cron/ 里面去了,而且是以帐号来作为判别的
如:lewis用户使用 crontab 后, 他的工作会被纪录到 /var/spool/cron/lewis中。另外, cron 运行的每一项工作都会被纪录到 /var/log/cron 这个日志文件中.
crond服务每分钟检测一次,所以 cron 会每分钟去读取一次 /etc/crontab 与 /var/spool/cron 里面的数据内容 ,因此,只要你编辑完 /etc/crontab 这个文件,并且将他储存之后,那么 cron 的配置就自动的会来运行了。
如果你修改完的crontab或者添加的crontab没有马上的执行起来,那么你可以用 systemctl restart crond.service 重启