从桌面启动.sh 已完成一半工作....

从桌面启动.sh 已完成一半工作....

我有一个 .sh 脚本调用 mainSc.sh,如下所示:

#!/bin/bash
{
cd /home/myrepository
export LD_LIBRARY_PATH=/home/myrepository/build/src/
./myscript.sh | python mypythonscript.py
} || {
notify-send "it didn't work..."
}

我的问题是,当我从终端(./mainSc.sh)启动它时,它工作正常,而当我尝试从我创建的.desktop启动它时,它启动并工作,直到./myscript.sh 和我的python脚本不起作用...我真的不明白为什么......

多谢 !

答案1

如果您正在处理标准输入myscript.sh(例如,等待用户输入),则可以轻松解释此行为。由于没有连接终端,您的脚本将终止,就像cat会做的那样。

答案2

感谢 MayeulC,我找到了另一种选择:

在终端启动后,我的 .desktop 中的命令现在是:

gnome-terminal -e /home/myrepository/myscript.sh

这样我就可以监控所有代码的执行并以更简单的方式解决问题!

我发现当我通过 .desktop 或终端启动它时,我的 python 脚本不是由同一版本的 python 执行的(但我还不知道原因)。

我会努力的!谢谢

滴定

相关内容