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


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


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

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

编写/root/test.sh脚本

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

#!/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命令bash

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

实现结果

经过以上步骤,便可实现date >> /root/result.txt命令每秒执行一次,测试结果以下: pic学习

涉及的其余知识

清空文件内容方式

方式一:测试

cat /dev/null > file.name

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

echo "" > file.name

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

vim file.name
:%d
:wq

追加输入到文件末尾

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

参考htm

相关文章
相关标签/搜索