我已经创建了这个执行 shell 的启动器:
[Desktop Entry]
Version=1.0
Type=Application
Terminal=true
Icon[en_US]=gnome-sudoku
Name[en_US]=MServer.desktop
Exec=/home/lucasfonseca/myapplication/server.sh
Comment[en_US]=bla=foo
Name=MServer
Comment=foo
Icon=gnome-sudoku
在 server.sh 上我有:
#!/bin/bash
python webserver/server.py
当我单击启动器时,它会打开然后关闭。我没有运行服务器。当我打开此启动器时,如何让服务器在终端窗口中运行?
答案1
其实,问题就出在路径错误。
我使用此代码来获取相对路径并执行脚本:.sh/server.sh
[Desktop Entry]
Version=1.0
Type=Application
Terminal=true
Icon[en_US]=gnome-panel-launcher
Name[en_US]=Server
Exec=sh -e -c "exec \\"\\$(dirname \\"\\$0\\")/.sh/server.sh\\";$SHELL" %k
Comment[en_US]=aaaaaaaaaaa
Name=Server
Comment=aaaaaaaaaaa
Icon=gnome-panel-launcher
友情提示:当出现错误时,启动器不会显示终端。因此我建议你ping localhost
在脚本的最后放一些类似的东西(就像我的一样server.sh
),这样你就可以在开发时查看最终的错误消息。