如何从桌面快捷方式执行 sh 脚本?

mic*_*hel 56 bash shortcuts

我正在尝试创建一个快捷方式来登录我的 ssh 服务器:

ssh x.x.x.x
Run Code Online (Sandbox Code Playgroud)

我制作了以下文件:

ssh_home.sh
Run Code Online (Sandbox Code Playgroud)

使其可执行:

sudo chmod +x ./ssh_home
Run Code Online (Sandbox Code Playgroud)

通过右键单击属性来检查它是否可以执行并且它是..

但是无论我做什么,当双击它时,它都会启动 gedit。我试过“打开方式”,但那里没有显示终端应用程序。我在网上搜索,但只找到了一种链接到文件的方法,而没有将其集成到一个“快捷方式文件”中

小智 55

我知道这是很久以前的事了,但如果有人问我,我有这个答案。

  1. 打开鹦鹉螺
  2. 文件菜单 -> 行为选项卡
  3. 打开时运行可执行的文本文件

在更高版本中,此选项位于:文件菜单 -> 编辑 -> 首选项 -> 行为选项卡

在 Ubuntu 14.10 中,将鼠标移动到屏幕顶部,出现文件、编辑等...菜单栏。单击编辑 -> 首选项 -> 行为选项卡

  • 一种复杂情况是这会影响*所有* 可执行文件。(这可能就是你想要的。) (3认同)
  • 恕我直言,这应该是公认的答案。试图弄清楚为什么我无法从 Nautilus 运行 shell 脚本时,我感到非常沮丧。 (2认同)

小智 49

我认为通过创建一个~/Desktop/ssh_home.desktop包含以下内容的文件来为您的脚本使用启动器文件会更好:

[Desktop Entry]
Version=1.0
Exec=/home/yourname/bin/ssh_home.sh
Name=SSH Server
GenericName=SSH Server
Comment=Connect to My Server
Encoding=UTF-8
Terminal=true
Type=Application
Categories=Application;Network;
Run Code Online (Sandbox Code Playgroud)

这样你就会有一个可点击的图标来启动你的脚本。

您可能还必须使用以下命令设置可执行标志chmod

chmod +x ~/Desktop/ssh_home.desktop
Run Code Online (Sandbox Code Playgroud)

  • @michel 如果脚本所做的只是运行 `ssh host`,那么您不需要该脚本,只需将 Exec 行更改为 `Exec=ssh host`。 (9认同)