1. 程式人生 > >centos crontab if else 用法

centos crontab if else 用法

使用場景

如果程序存在,則不執行。不存在則執行。

錯誤的定時

*/21 7-20 * * * pgrep -f crawler/run.py || python3.6 crawler/run.py > /dev/null 2>&1

正確的寫法

*/21 7-20 * * * pgrep -f crawler/run.py; [ $? == 0 ] && python3.6 crawler/run.py > /dev/null 2>&1

解釋

在shell中直接使用 || 可以,但是在 crontab 中卻一直都不行。不斷測試才發現是 ||

的問題,但 && 是可以在crontab中使用的。最終改成[ $? == 0 ] 替代。