码迷,mamicode.com
首页 > 系统相关 > 详细

Linux定时任务实现每秒执行一次

时间:2020-03-09 09:11:43      阅读:162      评论:0      收藏:0      [点我收藏+]

标签:方法   img   dev   inf   结果   root   lin   roo   添加内容   


Linux定时任务实现每秒执行一次


以下仅为本人工作、学习过程中所接触到的内容,不足之处请多包涵。

crontab定时任务最小周期为1分钟,如果脚本的调度周期需要小于1分钟,crontab就无法直接使用了,不过可以使用以下方法实现调度周期小于1分钟的情况。
date >> /root/result.txt为需要定时执行的命令(当然该语句可以换成其他脚本,如果需要的话),周期为1秒,分为两步实现:
1、循环中实现1分钟执行60次;
2、crontab定时任务每分钟执行一次test.sh脚本
1、2步骤配合使用,就实现了date >> /root/result.txt命令每秒执行一次的需求。

编写/root/test.sh脚本

该方法适用于调度周期能被60整除的情况

#!/bin/bash
step=1
for (( i = 0; i < 60; i = (i+step) )); do
    date >> /root/result.txt
    sleep $step
done

exit 0

配置定时任务

定时任务配置为每隔1分钟执行一次
若不了解定时任务如何添加,可参考Linux之crontab命令

// 编辑crontab
crontab -e
// 添加定时任务
* * * * * sh /root/test.sh
或
*/1 * * * * sh /root/test.sh

实现结果

通过以上步骤,即可实现date >> /root/result.txt命令每秒执行一次,测试结果如下:
技术图片

涉及的其他知识

清空文件内容方式

方式一:

cat /dev/null > file.name

方式二:
这种方式会在文件中写入一个空行

echo "" > file.name

方式三: 在 vi / vim 编辑状态下,使用%d清空

vim file.name
:%d
:wq

追加输入到文件末尾

// > 添加内容,会删除文件中的原来内容
date > /root/result.txt
// >> 在原文件末尾追加内容
date >> /root/result.txt

参考

Linux定时任务实现每秒执行一次

标签:方法   img   dev   inf   结果   root   lin   roo   添加内容   

原文地址:https://www.cnblogs.com/hai-feng/p/12446126.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!