Linux 定时任务crontab实现秒级定时以及@reboot的一些问题

简介: Linux 定时任务crontab实现秒级定时以及@reboot的一些问题

Linux  定时任务crontab实现秒级定时以及@reboot的一些问题

Linux自带的crontab定时任务服务还是比较强大的,通过该服务结合脚本可以实现很多功能,实乃运维工作的一大神器。

首先明确一点,定时任务自然需要有任务,任务分为脚本任务和系统自带命令。

如果有这样一个脚本任务,仅仅需要开机后运行一次,那么,crontab结合@reboot是一个不错的选项。如果是系统自带命令任务,@reboot不一定会执行,由于系统开机初始化,很有可能系统自带命令运行环境并不满足,但crontab已经开始执行@reboot,从而造成命令运行失败。

@reboot的使用方法如下:

crontab -e -u root,这时候打开了一个文本编辑窗口,输入如下内容

@reboot /bin/bash/脚本路径和脚本名称

保存后关闭,重启机器会自动执行一次脚本。

重启后,会在/root 目录下生成一个 名为 hello.txt 的文件。建议要执行的任务最好是脚本,本例使用的是touch命令,可能别的命令就不一定会成功了。

因此,如果有一些服务没有写进systemd守护的自启进程,可以使用此方法来进行代替,比如,weblogic服务只编写有启动脚本,这个时候将该服务的启动脚本利用@reboot 就可以做成自启服务了。

秒级定时任务的实现是利用sleep 刷新时间后,会执行后续命令的方式来实现。详情见下面。

*/1 * * * * /bin/date >>/tmp/date.txt
*/1 * * * * sleep 5  ; /bin/date >>/tmp/date.txt
*/1 * * * * sleep 10 ; /bin/date >>/tmp/date.txt
*/1 * * * * sleep 15 ; /bin/date >>/tmp/date.txt
*/1 * * * * sleep 20 ; /bin/date >>/tmp/date.txt
*/1 * * * * sleep 25 ; /bin/date >>/tmp/date.txt
*/1 * * * * sleep 30 ; /bin/date >>/tmp/date.txt
*/1 * * * * sleep 35 ; /bin/date >>/tmp/date.txt
*/1 * * * * sleep 40 ; /bin/date >>/tmp/date.txt
*/1 * * * * sleep 45 ; /bin/date >>/tmp/date.txt
*/1 * * * * sleep 50 ; /bin/date >>/tmp/date.txt
*/1 * * * * sleep 55 ; /bin/date >>/tmp/date.txt
*/1 * * * * sleep 25 ; /bin/date >>/tmp/date.txt
*/1 * * * * /bin/date >>/tmp/date.txt
*/1 * * * * sleep 10 ; /bin/date >>/root/date.txt
*/1 * * * * sleep 20 ; /bin/date >>/root/date.txt
*/1 * * * * sleep 30 ; /bin/date >>/root/date.txt
*/1 * * * * sleep 40 ; /bin/date >>/root/date.txt
*/1 * * * * sleep 50 ; /bin/date >>/root/date.txt
#两个任务,第一个任务是每隔五秒将当前时间写入 /tmp/date.txt,第二个任务是每隔10秒将当前时间写入
#/root/date.txt文件,tail -f /tmp/date.txt 可以实时的看到任务的执行。
#如果是别的任务,将命令根据实际情况替换即可。


目录
相关文章
|
3月前
|
安全 Linux 调度
在Linux中,如何实现,每星期天早8点服务器定时重启?
在Linux中,如何实现,每星期天早8点服务器定时重启?
|
9天前
|
监控 Unix Linux
|
14天前
|
Linux
Linux Crontab 查看定时任务启动没
【10月更文挑战第20天】在Linux系统中,crontab用于设置周期性执行的任务。查看当前用户的Crontab任务列表,使用`crontab -l`;查看所有用户任务,使用`sudo crontab -l`或指定用户`sudo crontab -u username -l`。
35 5
|
3月前
|
存储 运维 监控
运维.Linux下执行定时任务(中:Cron的常用替代方案)
本文是关于Linux下执行定时任务系列的第二部分,主要探讨除了Cron之外的常用替代方案。介绍了Systemd Timers、Anacron及at命令三种工具,它们分别适用于不同场景下的定时任务需求。文章详细分析了每种工具的特点、工作原理、基本使用方法及其高级功能,并对比了它们各自的优缺点,帮助读者根据实际情况选择最适合的定时任务解决方案。此外,还提供了指向具体实例和进一步阅读材料的链接。
118 4
运维.Linux下执行定时任务(中:Cron的常用替代方案)
|
2月前
|
Unix Linux Python
Cron定时设置在linux和mac中的使用
文章详细说明了如何在Linux和Mac操作系统中使用Cron进行定时任务的设置,并提供了多个Cron表达式的实例。
36 0
|
3月前
|
监控 Linux 调度
在Linux中,如何进行调度任务?什么是 crontab 并解释 crontab 中的字段?
在Linux中,如何进行调度任务?什么是 crontab 并解释 crontab 中的字段?
|
3月前
|
监控 安全 Linux
在Linux中,如何设置定时任务(cron job)?
在Linux中,如何设置定时任务(cron job)?
|
4月前
|
数据挖掘 Linux Shell
linux 使用crontab 创建定时任务
linux 使用crontab 创建定时任务
102 0
linux 使用crontab 创建定时任务
|
3月前
|
监控 Ubuntu Linux
|
3月前
|
存储 运维 监控
运维.Linux下执行定时任务(上:Cron简介与用法解析)
运维.Linux下执行定时任务(上:Cron简介与用法解析)
50 0