linux ubuntu 定時任務crontab使用教程

系統 linux系統

root@iZj6cbwo06ba2g87fx63cjZ:~/demo# uname -a 
Linux iZj6cbwo06ba2g87fx63cjZ 4.4.0-117-generic #141-Ubuntu SMP Tue Mar 13 11:58:07 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux

安裝

apt-get install cron -y

啓動

systemctl start cron

查看crontab狀態
ss
編寫腳本restart.sh
腳本內容如下

#! /bin/sh    
    
proc_name="trend.py"   
    
proc_num()   
{  
    num=`ps -ef | grep $proc_name | grep -v grep | wc -l`  
    return $num  
}  
  
proc_num    
number=$?
echo $number                         
if [ $number -eq 0 ]              
then                             
    cd /root/demo/ 
    #nohup python trend.py &  
    nohup /root/anaconda3/bin/python trend.py &  
fi

這裏有個坑/root/anaconda3/bin/python trend.py,必須指定python版本,不然crontab執行時會隨機執行一個

Python 3.7.0 (default, Jun 28 2018, 13:15:42) 
[GCC 7.2.0]

實現每秒執行一次:因爲定時任務crontab最小執行單位是1min,所以在執行一次之後,每隔一秒執行一次
文件crontab.sh內容如下

#!/bin/bash 
step=1  
for (( i = 0; i < 60; i=(i+step) )); do
  /root/demo/restart.sh
  sleep $step 
done
exit 0

查看定時任務列表

crontab -l

添加定時任務列表

crontab -e

出現如下圖所示內容,編輯添加 如下內容 * * * * * bash /root/demo/crontab.sh
在這裏插入圖片描述
然後按 Control + X,輸入 Y,然後按Control + T 選擇所需要保存在那個文件就可以了
DD
輸入 Y,然後按Control + T
在這裏插入圖片描述
選擇所需要保存在那個文件
在這裏插入圖片描述
出現這個crontab: installing new crontab就表明成功添加定時任務了

說明

crontab –e : 修改 crontab 文件. 如果文件不存在會自動創建。 
crontab –l : 顯示 crontab 文件。 
crontab -r : 刪除 crontab 文件。
crontab -ir : 刪除 crontab 文件前提醒用戶。

參考:
shell腳本:Syntax error: Bad for loop variable錯誤解決方法
linux定時任務crontab 實現每秒執行一次的方法
crontab定時任務不執行的原因
使用nano時怎麼保存退出的問題
linux命令之crontab定時執行任務
linux服務器掛掉自動重啓腳本

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章