Linux Crontab 因執行 date 加入動態參數 導致 crontab 無執行排程

有個需求是要記錄執行 Shell 過程,因此在crontab上面帶入date日期且含有參數格式

原始錯誤 crontab 寫法

0 0 * * * sh /home/user/execute.sh > /home/user/execute_`date '+%Y%m%d'` 2>&1

這種命令在command模式下執行不會有問題,但在crontab模式下,卻無法啟動執行該命令

最終在google大神的搜尋下,發現需要使用跳脫字元「\」,因此正確的寫法如下

0 0 * * * sh /home/user/execute.sh > /home/user/execute_`/usr/bin/date "+\%Y\%m\%d"` 2>&1

張貼留言

0 留言