如何为 .sh 文件创建应用程序启动器?

如何为 .sh 文件创建应用程序启动器?

我有这个 run.sh 文件,并且我已经在我的桌面上创建了一个符号链接。

当我双击该文件时,会出现以下对话框

而且每次我都要点击“运行”。如何创建默认运行的链接?

答案1

不要直接链接到.sh 文件,而是创建一个应用程序启动器,如下所示:

  • 右键单击桌面
  • 选择“创建启动器...”
  • 在下拉框中将“应用程序”更改为“终端中的应用程序”。
  • 给它起一个名字,例如“想法”
  • 输入如下命令/path/to/script/idea.sh
  • 如果愿意,可以添加一条评论,如果您将启动器移动到菜单栏,当鼠标悬停在评论上时,评论就会显示出来。

然后,当您单击启动器时,将打开一个终端窗口并且命令将在那里运行。

如果您不想打开终端查看任何输出,只需使用“应用程序”而不是“终端中的应用程序”。

您可能需要使用 gedit 之类的工具编辑桌面文件以添加脚本的“路径”。如下所示:

#!/usr/bin/env xdg-open

[Desktop Entry]
Version=1.0
Type=Application
Terminal=false
Icon[en_US]=/home/kurt/Games/dontstarve/dontstarve.xpm
Exec=/usr/games/dontstarve/bin/dontstarve.sh
Path=/usr/games/dontstarve/bin
Name[en_US]=Dont Starve
Name=Dont Starve
Icon=gnome-panel-launcher

答案2

为什么不直接将 Nautilus 配置为默认执行?

在 Nautilus 下,转到编辑 (Edit)->首选项 (Preferences)->行为 (Behavior),然后单击:

“打开可执行文本文件时运行它们”

答案3

Richard 的解决方案不适用于 Unity Desktop,而最近的 Ubuntu 版本默认使用该桌面。要轻松在 Unity 中创建快捷方式,您可以使用“主菜单”又名 alacarte 应用程序,它允许您编辑程序。只需单击相应的类别,然后单击“创建项目”。

答案4

我想让我的孩子更容易启动“饥荒”。我在/usr/games/dontstarve/bin/dontstarve.sh终端中启动了该程序,但希望它在应用程序菜单中。

我用 Alacarte 添加了菜单项,但它不起作用,因为它是一个 .sh 文件。

经过多次搜索,我发现我需要指定脚本的路径。

添加路径,如中所述桌面变量

alacarte-made-51cc077a-58af-11e3-a764-00252267190b.desktop我找到了 启动器~/.local/share/applications/并通过添加路径线对其进行了修改。

现在启动器文件如下所示:

#!/usr/bin/env xdg-open

[Desktop Entry]
Version=1.0
Type=Application
Terminal=false
Icon[en_US]=/home/kurt/Games/dontstarve/dontstarve.xpm
Exec=/usr/games/dontstarve/bin/dontstarve.sh
Path=/usr/games/dontstarve/bin
Name[en_US]=Dont Starve
Name=Dont Starve
Icon=gnome-panel-launcher

效果非常好。希望这对其他人有帮助。(我实际上运行的是基于 Ubuntu Raring 的 Mint 15 Olivia)

相关内容