步驟一 首先我們先看一下是否安裝了crontab。一般情況下linux系統會自帶crontab及crond。如果沒有安裝,請使用以下指令安裝:yum install vixie-cron yum install crontabs (PS:Ubuntu操作系統下請使用apt-get)
步驟二 然后我們寫一個名字叫做miao.sh的shell腳本。很簡單,就是輸出一段字符。
步驟三 我們的目的是每分鍾執行一次這個shell腳本,所以要再建立一個存放日志的log文件,然后給予miao.sh權限
步驟四 然后我們就要使用crontab了,首先進入它的配置文件,在/etc/crontab 中添加我們的調度命令。注意,該配置文件是一個只讀文件,需要使用sudo vi /etc/crontab 指令打開文件,不然有可能沒有修改權限。
文件/etc/crontab中每行任務的描述格式如下:
minute hour day month dayofweek command
minute - 從0到59的整數
hour - 從0到23的整數
day - 從1到31的整數 (必須是指定月份的有效日期)
month - 從1到12的整數 (或如Jan或Feb簡寫的月份)
dayofweek - 從0到7的整數,0或7用來描述周日 (或用Sun或Mon簡寫來表示)
command - 需要執行的命令(可用as ls /proc >> /tmp/proc或 執行自定義腳本的命令)
comp表示以comp用戶身份來運行
>>表示運行腳本后重定向到log文件中
對於以上各語句,星號(*)表示所有可用的值。例如*在指代month時表示每月執行(需要符合其他限制條件)該命令。
步驟五 開啟crontab服務
service crond start,出現下面情況
出現Redirecting to /bin/systemctl start crond.service, 即service crond start 需要替換為systemctl方式:
開始:systemctl start crond
停止:systemclt stop crond
步驟六 查看運行結果
到日志中查看是否有信息輸入。
如何查看crontab的日志記錄:看 /var/log/cron這個文件就可以,可以用tail -f /var/log/cron觀察
報錯:ERROR (getpwnam() failed)
這種一般是時間后面沒加用戶root導致:
/1 * * * /opt/a.sh 錯誤寫法
/1 * * * root /opt/a.sh 正確的方式