簡體   English   中英

python 腳本不獲取在 crontab 中設置的環境變量

[英]python script doesn’t pick up environment variable that is set in crontab

當我從終端運行我的 python 腳本時,由於缺少 env 變量而出現錯誤。 我可以使用export和設置來解決這個問題。 但是還有其他 python 腳本作為 cron 作業運行良好,也需要它。 我看到這個 env 變量被設置在 cron 選項卡中。 所以我的問題是 cron 中設置的 env 變量是否可用於用戶/root 從 cli 運行的腳本? 以 root 身份運行env命令不會顯示此變量。

環境變量是每個進程私有的,而不是全局的。 啟動新進程時,它會從其父進程繼承其初始環境。 您的終端 shell 不是由 cron 啟動的,因此它不會繼承您在 crontab 中設置的環境變量。

您的操作系統可能會提供一種標准機制來為所有進程設置環境變量(例如,您的終端會啟動您的 CLI shell)。 我更喜歡做的是創建一個名為~/.environ的文件,然后我在我的~/.bashrc source cron 作業中獲取該文件。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM