Mac系統crontab 定時執行


1、Linux和Mac下操作crontab都是一致的

2、配置文件都在/etc/crontab下,如果沒有就創建。

3、crontab參數

  crontab [-u user] file crontab [-u user] [ -e | -l | -r ]

-u user:用來設定某個用戶的crontab服務;

file:file是命令文件的名字,表示將file做為crontab的任務列表文件並載入crontab。如果在命令行中沒有指定這個文件,crontab命令將接受標准輸入(鍵盤)上鍵入的命令,並將它們載入crontab。

-e:編輯某個用戶的crontab文件內容。如果不指定用戶,則表示編輯當前用戶的crontab文件。

-l:顯示某個用戶的crontab文件內容,如果不指定用戶,則表示顯示當前用戶的crontab文件內容。

-r:從/var/spool/cron目錄中刪除某個用戶的crontab文件,如果不指定用戶,則默認刪除當前用戶的crontab文件。

-i:在刪除用戶的crontab文件時給確認提示。

 

4、配置環境變量,打開open ~/.bash_profile文件添加以下內容;

  EDITOR=vim crontab -e;export EDITOR

5、crontab的文件格式

  eg:* * * * * sh /xxxxx/davecron.sh >>/xxxxx/davecron.log

 * 第1列分鍾0~59  * 第2列小時0~23(0表示子夜)  * 第3列日1~31  * 第4列月1~12  * 第5列星期0~7(0和7表示星期天)  * 第6列要運行的命令

6、crontab服務的重啟關閉
  Mac系統下:
  
sudo /usr/sbin/cron start
  sudo /usr/sbin/cron restart
  sudo /usr/sbin/cron stop
  Ubuntu:
  
sudo /etc/init.d/cron start
  sudo /etc/init.d/cron stop
  sudo /etc/init.d/cron restart

7、單獨執行.sh文件可以成功,加入crontab中,沒有定時執行問題
  原因:環境變量問題
  解決:
    1.寫shell腳本時頭部添加:#!/bin/bash
    2.終端輸入env查看系統變量
      

 

    3.將系統變量添加到shell文件中

  

 

     4.再次運行crontab定時執行,成功

 



 
 


免責聲明!

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



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