Linux執行crontab腳本出錯

Linux下用crontab執行定時任務不會缺省的從用戶profile文件中讀取環境變量參數,經常導致在手工執行某個 腳本時是成功的,但是到crontab中試圖讓它定期執行時就是會出錯。

這是因爲用戶登陸Linux操作系統的時候,”/etc/profile”, “~/.bash_profile”等配置文件會被自動執行。

2種方法可以解決這個問題,

1、在Shell文件裏面獲取環境變量值的路徑寫成絕對路徑,別用環境變量的路徑值。例如獲取CPU的使用情況  通過絕對路徑/proc/cpuinfo 來獲取值;

2、Shell腳本缺省的#!/bin/bash開頭換行後的第一行用

#!/bin/bash

. /etc/profile

. ~/.bash_profile

這樣,crontab在執行腳本的時候,就能夠讀到用戶的環境變量參數.

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章