0
我有一個cron作業來運行一個名爲sedcmd.sh的sed shell來預處理一些json數據。當我在正確的目錄我手動運行它與crontab不會運行sed shell
. ./sedcmd.sh
它的工作原理。外殼本身工作正常。 參考命令的一個內部看起來像
sed -i '/^\s*$/d' /home/school/Desktop/Programs/rawjsondata.txt
我的cronjob看起來像
5 * * * * . ./home/school/Desktop/Programs/sedcmd.sh
我得到的錯誤「沒有這樣的文件或目錄下找到」。我究竟做錯了什麼。我三重檢查了任何拼寫錯誤。我也似乎無法從任何其他目錄運行sedcmd.sh,即使我給整個文件路徑,所以它肯定是我做錯了。我對解決方案的想法是
- 我應該將sedcmd.sh添加到我的$ PATH或bashrc中,以便我可以從任何地方調用它。我不知道該怎麼做。 或
- 弄清楚如何從crontab中正確調用它。我也不知道該怎麼做。
如果將反式詞條更改爲'5 * * * */home/school/Desktop/Programs/sedcmd.sh'(沒有點),該怎麼辦? –
修復它。那爲什麼呢?我認爲這些點是調用shell所必需的。 – Sam
僅當您在相同的目錄中調用文件時。看看[這裏](http://unix.stackexchange.com/a/4432) –