1. 程式人生 > >解決crontab無法讀取環境變數

解決crontab無法讀取環境變數

問題描述

設定一個crontab,*/1 * * * * /bin/bash  /home/test/1.sh,

手動 sh  /home/test/1.sh可以執行,但放到crontab裡卻無法執行,

問題所在:

crontab預設使用者profile檔案中的環境變數引數, 導致手工執行指令碼成功,但是到crontab中無法執行。

解決方法:

在每個需要定時執行的指令碼前面加上如下內容

#!/bin/bash
. /etc/profile
. ~/.bash_profile    #某些系統上沒有這個檔案,不過加上也沒關係
. ~/.barshrc

備註:. /etc/profile的效果和 source /etc/profile效果一樣,所以也可以使用source指令

建議

在定時腳本里認真檢查每一個環境變數,最好寫全它的實際路徑。

(尤其是python變數)

參考:https://blog.csdn.net/jiangguilong2000/article/details/38318011?utm_source=copy