Linux中的定时自动执行功能(at,crontab)

本文介绍了Linux中用于定时自动执行任务的两个工具:at和crontab。at命令适用于一次性任务,而crontab则用于周期性任务。通过at,你可以设置指定时间执行脚本,例如定时关机;crontab则允许设置时间格式,用于每天的定期执行。文章包括每个工具的使用方法、实例和计划的删除操作。
摘要由CSDN通过智能技术生成

Linux中的定时自动执行功能(at,crontab)

概念

在Linux系统中,提供了两种提前对工作进行安排的方式

  • at 只执行一次

  • crontab 周期性重复执行

通过对这两个工具的应用可以让我们在操作系统层面实现定时自动运行功能

实验环境

操作系统:CentOS Linux release 7.3.1611 (Core)

IP: 192.168.230.134

at介绍

at命令会,并且会执行一次

此功能会使用到atd工具,需要保证其为启动状态

[root@localhost ~]# systemctl status atd
● atd.service - Job spooling tools
   Loaded: loaded (/usr/lib/systemd/system/atd.service; enabled; vendor preset: enabled)
   Active: active (running) since Thu 2017-09-07 18:18:18 CST; 4h 2min ago
 Main PID: 921 (atd)
   CGroup: /system.slice/atd.service
           └─921 /usr/sbin/atd -f

Sep 07 18:18:18 localhost.localdomain systemd[1]: Started Job spooling tools.
Sep 07 18:18:18 localhost.localdomain systemd[1]: Starting Job spooling tools...

at使用

常用命令如下

[root@localhost ~]# at -help
Usage: at [-V] [-q x] [-f file] [-mMlbv] timespec ...
       at [-V] [-q x] [-f file] [-mMlbv] -t time
       at -c job ...
       atq [-V] [-q x]
       at [ -rd ] job ...
       atrm [-V] job ...
       batch

时间格式:

格式 示例 意义
HH:MM 01:01 下一次1点1分执行
HH:MM YYYY-MM-DD 01:00 2017-09-08 指定具体年月时间执行
HH:MM[am/pm]+number[minutes/hours/days/weeks] now+3 days 某时间点再加些时间后

at实例

创建测试用sh,并修改权限

[root@localhost ~]# vim test.sh

echo '豆姐威武'

[root@localhost ~]# chmod 755 test.sh 
[root@localhost ~]# ./test.sh 
豆姐威武

查看当前时间

[root@localhost ~]# date
Thu Sep  7 23:19:51 CST 2017

使用at命令,设定23:21执行test.sh命令,注意以Ctrl+d结束

[root@localhost ~]# at 23:21
at> /root/test.sh
at> <EOT>
job 5 at Thu Sep  7 23:21:00 2017

坐等一分钟后,收到系统给的信息,查看时间以及到了设定时间

You have new mail in /var/spool/mail/root
[root@localhost ~]# date
Thu Sep  7 23:21:04 CST 2017

查看系统收到的信息

[root@
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值