定時任務中shell指令碼的執行

2021-06-16 17:41:54 字數 409 閱讀 2032

今天在修改乙個指令碼時,出現乙個比較奇怪的問題:定時任務執行到乙個子指令碼時好似跳過去了,繼續執行該子指令碼後邊的程式,但是當不設定定時任務,直接執行該指令碼時,這個指令碼中的此子指令碼又可以執行了。

經過比較確認,主要是由於該子指令碼的執行方式是除錯執行模式,即:sh -x abc.sh。其中-x選項表示除錯模式,即執行指令碼中的每條語句都會列印出來,並且其中的變數會被替換為變數的值,在除錯指令碼的過程中是首選方式,可以對指令碼中的每條語句都有清晰的理解。

說到shell的選項,其還有乙個比較有用的選項:-n,該選項主要是為你檢查shell的語法是否有錯誤,執行時選擇該選項,並不會對該指令碼進行執行,知識起檢查語法的作用,這樣可以預防你前期編寫的指令碼,由於語法錯誤導致產生一些對系統,或者其他方面的問題。

總之,在定時任務中不可以使用-x選項,這樣會導致該指令碼無法進行執行。

Linux 執行定時任務 shell指令碼

linux上面執行定時任務,我們可以利用crontab e直接編輯定時任務 另外我們還可以寫好shell指令碼,定時去執行shell指令碼,這兩個方法都可以起到定時執行的作用 下面我詳細說一下入如何執行shell指令碼 bin bash echo yes home abc.txt儲存完畢後記得給予許...

Linux 執行定時任務 shell指令碼

linux上面執行定時任務,我們可以利用crontab e直接編輯定時任務 另外我們還可以寫好shell指令碼,定時去執行shell指令碼,這兩個方法都可以起到定時執行的作用 下面我詳細說一下入如何執行shell指令碼 1.宣告一下我安裝的lnmp環境,shell指令碼存放的位置在 usr loca...

Linux 執行定時任務 shell指令碼

下面我詳細說一下入如何執行shell指令碼 1.宣告一下我安裝的lnmp環境,shell指令碼存放的位置在 usr local sbin路徑下面 新建乙個test.sh bin bash echo yes home abc.txt 儲存完畢後記得給予許可權 chmod 777 test.sh she...