本文主要是介绍每日一shell之例行任务管理at和cron命令,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
但一时刻执行一次任务at
at now + 30 minutes
//进入at命令并设定时间是从现在开始的30分钟后
/sbin/shutdown -h now
//关机命令
之后用ctrl+D结束输入。
at命令输入后会进入at进程,在其中有自己的输入。
atq
查询at任务队列。
作为系统管理员,可以禁止某些用户使用at功能,将该用户的用户名添加至/etc/at.deny中
周期性执行任务cron
在用cron命令时,需要确认crond进程是否运行。如果没有运行就先启动该进程。
service crond status
查看crond进程是否运行
service crond start
启动crond进程
用户可以用crontab来设置自己的计划任务
看一下crontab的命令格式
*------*------*-----*-----*-----command
分钟—–小时—-日期—月份—星期几
crontab -r
删除所有任务
crontab -l
查看设置的任务
root可以查看用户的任务
crontab -u 用户名 -l
和at一样我们可以在/etc/cron.deny中添加用户名来禁止用户使用该功能。
以上是使用crontab -e进入编辑模式进行设置。
这里给出几个例子
* * * * * service httpd restart
*/1 * * * * service httpd restart
//这两个命令都是每分钟重启一次http服务
* 23-3/1 * * * service httpd restart
//每天的23到3点每小时重启一次http服务
30 23 * * * service httpd restart
//每天23点30分重启一尺http服务。
在我centos7中
cat /etc/crontab
SHELL=/bin/bash
PATH=/sbin:/bin:/usr/sbin:/usr/bin
MAILTO=root
`# For details see man 4 crontabs
# Example of job definition:
# .—————- minute (0 - 59)
# | .------------- hour (0 - 23)
# | | .———- day of month (1 - 31)
# | | | .------- month (1 - 12) OR jan,feb,mar,apr ...
# | | | | .—- day of week (0 - 6) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat
# | | | | |
# * * * * * user-name command to be executed
多了一列用户名。
我们不仅可以通过命令来设置任务,也可以通过修改配置来设置任务。
这篇关于每日一shell之例行任务管理at和cron命令的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!