CentOS7中定时任务的使用,你知道几种?

CentOS7中定时任务的使用你知道几种

使用 crontab 命令来设置定时脚本。

  1. 打开终端,输入以下命令来编辑 crontab 文件:
crontab -e
  1. 在编辑器中添加定时任务,格式如下:
* * * * * command

其中,五个星号分别代表分钟、小时、日、月、周,可以使用以下符号:

  • *:代表任意值
  • ,:代表多个值
  • -:代表一个范围
  • /:代表间隔时间

例如,以下命令表示每天凌晨 1 点执行一次 /root/test.sh 脚本:

0 1 * * * /root/test.sh
  1. 保存并退出编辑器。

注意事项:

  • crontab 文件中每行只能有一个命令。
  • crontab 文件中可以使用 # 开头的注释。
  • crontab 文件中的命令执行时的环境变量可能与用户登录时的环境变量不同,需要注意。
  • crontab 文件中的命令执行时的工作目录可能与用户登录时的工作目录不同,需要注意。

使用systemd timer:systemd timer是systemd的一个组件,可以用来设置定时任务。可以使用以下命令创建一个systemd timer:

  1. 创建一个 service 文件,用于定义要执行的任务。例如,创建一个名为 mytask.service 的文件,内容如下:
[Unit]
Description=My Task

[Service]
Type=simple
ExecStart=/path/to/my/script.sh

这个文件定义了一个名为 mytask 的服务,它会执行 /path/to/my/script.sh 脚本。

  1. 创建一个 timer 文件,用于定义定时执行任务的规则。例如,创建一个名为 mytask.timer 的文件,内容如下:
[Unit]
Description=My Task Timer

[Timer]
OnCalendar=*-*-* 00:00:00
Unit=mytask.service

[Install]
WantedBy=timers.target

这个文件定义了一个名为 mytask 的 timer,它会在每天的 00:00:00 执行 mytask.service 服务。

  1. 将 service 和 timer 文件放到 /etc/systemd/system/ 目录下。

  2. 启用并启动 timer:

systemctl enable mytask.timer
systemctl start mytask.timer

这样,mytask 服务就会在每天的 00:00:00 自动执行一次了。

使用at命令:at命令可以在指定时间执行一次命令或脚本。可以使用以下命令打开at编辑器:

AT命令是一种在Linux系统中执行一次性任务的命令。在CentOS 7中,可以使用以下步骤使用AT命令:

  1. 安装at命令

在终端中输入以下命令安装at命令:

sudo yum install at
  1. 启动atd服务

在终端中输入以下命令启动atd服务:

sudo systemctl start atd
  1. 使用at命令

在终端中输入以下命令使用at命令:

at [时间] [命令]

其中,[时间]是任务执行的时间,可以使用以下格式:

  • HH:MM:表示当天的某个时间点,例如“at 10:30”表示在当天的10:30执行任务。
  • now:表示立即执行任务。
  • +[时间]:表示从现在开始的一段时间后执行任务,例如“at +1 hour”表示在1小时后执行任务。

[命令]是要执行的命令,例如:

at 10:30 ls -l /home

表示在当天的10:30执行“ls -l /home”命令。

  1. 查看at任务

在终端中输入以下命令查看at任务:

atq

可以看到当前所有的at任务。

  1. 删除at任务

在终端中输入以下命令删除at任务:

atrm [任务ID]

其中,[任务ID]是要删除的任务的ID,可以通过atq命令查看。

以上是CentOS 7设置定时脚本的三种方式。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

AcerMr

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值