Ubuntu:无法在启动时从程序运行脚本

问题描述:

在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

我终于解决了。问题在于脚本(script1.sh)本身,因为它使用了对另一个脚本(script2.sh)的调用:在script1中,脚本2的调用是按照“script2”的方式完成的。我将这个调用改为/ path/to/script2/script2,一切正常。 最后的问题是:为什么我需要指定绝对脚本路径,如果这是在环境路径($ PATH)中?