2013-02-08 144 views
0

在Ubuntu中,我有一個C++ QT程序,我在其中調用外部腳本(.sh)。Ubuntu:無法在啓動時從程序運行腳本

如果我手動運行程序(從命令行)一切正常(腳本得到正確調用),但如果該程序在啓動時被調用(通過將其放入/etc/init.d並運行update-rc.d)程序正常運行,但腳本無法啓動。

+0

你的程序是否需要參數? – hek2mgl 2013-02-08 23:37:51

+0

感謝您的回覆。是的,即使在啓動時也需要一個正確的參數。我正在做其他測試,我發現即使創建「桌面啓動器」,腳本也不會被調用。如果我從命令行運行程序,該腳本只會被調用。 – lordpurple 2013-02-08 23:46:42

+0

你可以添加相關的代碼到你的問題? – hek2mgl 2013-02-08 23:50:09

回答

0

我終於解決了。問題在於腳本(script1.sh)本身,因爲它使用了對另一個腳本(script2.sh)的調用:在script1中,腳本2的調用是按照「script2」的方式完成的。我將這個調用改爲/ path/to/script2/script2,一切正常。 最後的問題是:爲什麼我需要指定絕對腳本路徑,如果這是在環境路徑($ PATH)中?

相關問題