Linux定時任務實現每秒執行一次



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命令每秒執行一次,測試結果如下:
pic

涉及的其他知識

清空文件內容方式

方式一:

cat /dev/null > file.name

方式二:
這種方式會在文件中寫入一個空行

echo "" > file.name

方式三: 在 vi / vim 編輯狀態下,使用%d清空

vim file.name
:%d
:wq

追加輸入到文件末尾

// > 添加內容,會刪除文件中的原來內容
date > /root/result.txt
// >> 在原文件末尾追加內容
date >> /root/result.txt

參考


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM