Linux定时任务调度--crontab与at

简介: Linux定时任务调度--crontab与at

 如有错误或有补充,以及任何改进的意见,请在评论区留下您的高见,同时文中给出大部分命令的示例,即是您暂时无法在Linux中查看,您也可以知道各种操作的功能以及输出

如果觉得本文写的不错,不妨点个赞,收藏一下,助力博主产生质量更高的作品

crontab [选项]

简介

crontab命令是一个用于设置周期性被执行的任务的工具。通过crontab,用户可以安排在指定的时间间隔内自动执行某些命令或脚本。

要使用crontab命令,您需要先编辑crontab文件,该文件包含了一系列要执行的任务。

使用

crontab -l

用户可以通过此选项列出当前用户的crontab任务,在没有编辑crontab文件时是没有输出的

crontab -e

编辑当前用户的crontab任务

在编辑crontab文件时,每个任务占一行,并且必须遵循以下格式:

  • 分钟 小时 日期 月份 星期 命令

以   */1 * * * * ls -hl /root> /tmp/root-dir.txt  为例

意味着每天的没分钟执行一次  ls -hl /root> /tmp/root-dir.txt

image.gif 编辑

五个占位符的含义:            

占位符 含义 范围
第一处 一小时当中的第几分钟   

0-59

第二处 一天当中的第几小时 0-23
第三处 一个月当中的第几天 1-31
第四处 一年当中的第几月 1-12
第五处 一周当中的星期几 0-7(0,7都是星期日)

crontab -r

删除当前用户的crontab任务,删除crontab任务将永久删除所有已安排的任务,因此请谨慎操作

示例:

image.gif 编辑

at

简介

Linux的at命令是一个用于安排一次性任务执行的命令行工具。at命令允许用户在指定的时间或日期安排一个命令或脚本的执行。

使用 -- at [选项][时间]

at指定时间格式:

时间参数可以使用多种格式来指定,包括:

绝对时间:通过指定日期和时间来指定一个确切的时间点。

       例如,“2023-03-15 14:30”表示2023年3月15日下午2点30分。

       hh:mm (小时:分钟)指定时间点

       12小时计时  用AM,PM确定上下午

相对时间:使用相对于当前时间的偏移量来指定时间。格式为:now + [count] [time-units],

       now 当前时间

       time-units 时间单位这里能够是 minutes(分钟)、hours (小时)、days (天)、 weeks (星期)

       count 时间的数量,几天,几小时

       例如,“now + 5 minutes”表示从现在开始5分钟后执行

       也可以直接用today,tommorrow指定

特殊时间:还可以使用一些特殊的时间关键词来表示特定的时间点,例如“midnight”(午夜)表示每天的0点,“noon”(中午)表示每天的12点等。

使用at后会生成at的命令行,在这里面可以输入您要指定的命令(不建议)

atq查看当前系统还未执行的at任务

选项:

at命令的选项主要包括:

-m:在任务执行完成后,将结果通过邮件发送给当前用户

-c:取消尚未执行的任务

-l:列出当前用户的所有任务

-r:删除当前用户的所有任务

-f:指定包含具体指令的任务文件

-q:指定新任务的队列名称

-v:显示任务即将被执行的时间

示例: image.gif 编辑

image.gif 编辑

image.gif 编辑

image.gif 编辑

目录
相关文章
|
4天前
|
监控 Unix Linux
|
9天前
|
Linux
Linux Crontab 查看定时任务启动没
【10月更文挑战第20天】在Linux系统中,crontab用于设置周期性执行的任务。查看当前用户的Crontab任务列表,使用`crontab -l`;查看所有用户任务,使用`sudo crontab -l`或指定用户`sudo crontab -u username -l`。
26 5
|
3月前
|
资源调度 监控 网络协议
在Linux中,如何进行系统资源调度?
在Linux中,如何进行系统资源调度?
|
3月前
|
监控 Linux 调度
在Linux中,如何进行调度任务?什么是 crontab 并解释 crontab 中的字段?
在Linux中,如何进行调度任务?什么是 crontab 并解释 crontab 中的字段?
|
3月前
|
负载均衡 算法 Linux
在Linux中,LVS的负载调度算法是什么?
在Linux中,LVS的负载调度算法是什么?
|
3月前
|
资源调度 监控 Linux
在Linux中,如何进行网络资源调度?
在Linux中,如何进行网络资源调度?
|
5月前
|
Unix Linux
Linux中的Crontab:定时任务管理器
`crontab`是Linux下的定时任务管理器,用于设置周期性执行的任务。用户可以通过`crontab -l`查看任务,`crontab -e`编辑,`crontab -r`删除任务。任务格式为:`* * * * * command`,分别代表分钟、小时、日期、月份、星期,例如`30 10 * * * /path/to/script.sh`。注意确保命令有执行权限,处理环境变量,并关注日志文件 `/var/log/syslog` 或 `/var/log/cron`。学会使用`crontab`能有效自动化Linux系统的日常任务。
|
4月前
|
数据挖掘 Linux Shell
linux 使用crontab 创建定时任务
linux 使用crontab 创建定时任务
99 0
linux 使用crontab 创建定时任务
|
6月前
|
Linux
Linux Crontab 查看定时任务启动没
Linux Crontab 查看定时任务启动没
98 0
Linux Crontab 查看定时任务启动没
|
11月前
|
资源调度 Kubernetes 调度
从 Linux Crontab 到 K8s CronJob,定时任务正在经历怎样的变革
从 Linux Crontab 到 K8s CronJob,定时任务正在经历怎样的变革
118917 59

热门文章

最新文章