linux自动启动任务--crontab、at命令

本文基于CentOS-7-x86_64-Minimal-2003.iso镜像版本:
自动启动任务的分类:单一任务和循环任务。对应的命令是at和crontab。

单一任务:at命令

问题:什么是atd?

答:atd是一个服务,atd名字拆分为at(命令) +daemon(守护进程)

问题:什么是daemon(守护进程)

答:就好比atd是诸葛亮,at命令是阿斗。

安装atd服务: yum install  atd
查看atd服务是否启动:systemctl status atd  输出结果如下:

● atd.service - Job spooling tools
   Loaded: loaded (/usr/lib/systemd/system/atd.service; enabled; vendor preset: enabled)
   Active: inactive (dead)
// enabled代表开机启动  inactive 代表没有运行。

启动atd服务:systemctl start atd
重启atd服务:systemctl restart atd
关闭atd服务:systemctl stop atd
atd设置开机启动:systemctl enable atd

用户使用权限

vim /etc/at.deny     #  里面写的是用户黑明单,说明这些用户不能使用at命令

问题:如何设置单一任务:(因为目前我的工作中只用到了crontab,所以暂时不学语法。)

===========================================================================

循环任务(crontab命令,守护服务crond):

crontab的查看服务那些命令同atd:比如启动crond服务 systemctl crond start。

用户使用权限

vim /etc/cron.deny    #  里面写的是用户黑明单,说明这些用户不能使用crontab命令

crontab命令语法(man crontab查看):

   crontab [-u user] file
   crontab [-u user] [-l | -r | -e] [-i] [-s]
   crontab -n [ hostname ]
   crontab -c

// -u 代表用户(user) 如: crontab -u  sxd
// -l 代表列表(list) 如 crontab -u sxd  -l :代表终端列出为sxd用户的任务
// -e 代表编辑(edit) 如contab -u sxd -e :代表终端编辑sxd用户的任务
// -r 代表移除(remove) 如contab -u sxd -r:代表终端移除sxd用户的任务
// 上面的-u sxd  我是在root权限上操作别人的东西,如果自己操作 可以去掉 -u sxd
// -n /-c好像跟集群有关的,自己有什么需求自行去了解。

crontab循环任务语法:

时间设置+命令:
	而时间有分钟(0-59)、小时(0-23)、天(1-31)、月(1-12)、周(0-7)。
比如:58,59 * * * * echo "hello.world" > /home/sxd/test.txt
* * * * * echo "hello.world" > /home/sxd/test.txt
// 所以第一个*为分钟设置值,第二*为小时设置值
// * 代表:任何范围内的值,比如第一*代表分钟范围内0-59的任何值。
// ,代表:多个时间点  比如3,6 **** 代表3分钟、6分钟都执行任务,执行了2次。
// - 代表:时间段  比如3-6 **** 代表分钟在3分钟到6分钟之内执行
// /n 代表:每隔,不如 */10**** 代表每隔10分钟执行
ps:重点:编辑任务时要有空格。

问题:什么是crontab、什么是cron、什么是crond:

答:可以认为cron就是crond,是crontab命令的守护服务。

crontab命令会涉及的文件:

/etc/crontab:与系统有关的循环任务编写文件

/etc/cron.d/*:与系统有关的循环任务编写文件

/var/spool/cron/*: 这里的星号代表用户名,里面有用户crontab -e 编辑的任务。

/var/log/cron: crontab执行后记录的日志文件,如果任务不生效,可以看这里。

/etc/cron-weekly等等:系统每周执行的任务

anacron命令:

保证特殊情况cron未被执行的循环任务 能被执行,有需求的自行去研究。

==============================================================================

解释下名词:
/var: 目录主要针对常态性变动的文件,包括缓存(cache)、登录档(log file)以及某些软件运作所产生的文件

/var/spool(卷):,也就是队列数据

/etc(Editable Text Configuration):系统配置文件目录。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值