如何在 Ubuntu 12.04 LTS 中为命令创建程序快捷方式?

如何在 Ubuntu 12.04 LTS 中为命令创建程序快捷方式?

我记得我可以在旧版本的 Ubuntu 中做到这一点,但是在 Ubuntu 12.04 中却找不到。

我想在启动器栏或桌面上添加一个项目,双击时运行以下命令,例如:

emacs -q --some-other-options --load ~/xyz.el

用 MS Windows 的话来说,我想创建一个具有自定义参数的程序快捷方式。如果我也可以通过在启动器搜索中键入“Emacs XYZ”并选择找到的项目来运行该命令,那就太好了。所有这一切都可以在 Windows 7 中实现,而且只需右键单击各种内容即可轻松找到如何做到这一点。

作为一种解决方法,我制作了一个包含该命令的可执行脚本“Emacs XYZ.sh”,并在桌面上创建了指向该脚本的链接(通过按住 Alt 拖动)。但这种解决方法并不完整,因为无法将链接拖到启动器栏,当我双击该链接时,Ubuntu 总是询问

您是否要运行“链接到 Emacs XYZ.sh”或显示其内容?

使运行命令只需两步。当我在启动器搜索中搜索“Emacs XYZ”并选择该项目时,它只会使用 gedit 打开脚本,而不是运行脚本。此外,脚本的显示图标不是 Emacs 图标。

答案1

我会用点菜/usr/bin/alacarte建立菜单条目。

然后在 alacarte 中,在命令所在的部分,我将使用终端仿真器来打开 emacs。

例如:terminator -x htop现在将在终结器窗口中启动htop。或者,如果您更喜欢使用gnome-terminal,那么它将是gnome-terminal -x htop

添加后,您可以在搜索中找到它,并将其添加到 Unity 上的启动栏。

terminator 和 gnome-terminal 有其他标志(例如-xin terminator -x htop),可以更好地完成任务。

这是我使用 alacarte 添加的名为 MOC 的程序的菜单项,我喜欢将其用于音频程序。我使用 -e 标志而不是 terminator,因为我不需要通过命令传递任何其他参数。

答案2

我读了很多书,也尝试了很多东西,然后我发现https://help.ubuntu.com/community/UnityLaunchersAndDesktopFiles这解释了一切。基于此,我得出了一个自我答案。

在这个答案中,我将证明:

  • 如何显示程序快捷方式的详细信息
  • 如何修改程序的快捷方式
  • 如何创建运行命令的新程序快捷方式
  • 如何将程序快捷方式添加到某个位置以便它出现在启动器搜索中(通过启动器搜索,我的意思是当您单击左侧的 Dash 主页图标或按下 Windows 键时显示的搜索界面。)

先决条件:

  • 熟悉 cd 和 ls 命令

打开终端。进入 /usr/share/applications 并使用 ls 显示文件夹的内容,同时使用 xdg-open 使用默认文件浏览器显示文件夹:

cd /usr/share/applications
ls
xdg-open . &

ls显示.desktop扩展名为 的文件。这些文件是文本文件,可以使用 gedit 查看其内容,例如输入:

gedit gcalctool.desktop &

文件夹中的每个.desktop文件都是一个程序快捷方式,文件浏览器将它们显示为程序快捷方式,而不是显示其实际文件名。可以使用 grep 发现哪些程序快捷方式属于哪些文件:例如,要找出哪个文件用于字符映射,请输入:

grep -Fi 'character map' *.desktop

这将表明它对应于文件gucharmap.desktop

为了编辑快捷方式,请使用 gksudo gedit 打开它:

gksudo gedit gucharmap.desktop &

为了创建一个新的快捷方式,例如创建一个运行以下命令的快捷方式:

python -i -c 'from math import *'

进入:

gksudo gedit gcalctool.desktop my-calc.desktop &

gcalctool.desktop是已经存在的计算器快捷方式文件,my-calc.desktop是尚不存在的新文件名。使用 gedit,将 的内容复制 gcalctool.desktopmy-calc.desktop,然后修改 的内容my-calc.desktop,然后保存。

gcalctool.desktop的内容:

[Desktop Entry]
Name=Calculator
Comment=Perform arithmetic, scientific or financial calculations
Exec=gcalctool
Icon=accessories-calculator
Terminal=false
Type=Application
StartupNotify=true
Categories=GNOME;GTK;Utility;Calculator;
X-GNOME-DocPath=gcalctool/gcalctool.xml
X-GNOME-Bugzilla-Bugzilla=GNOME
X-GNOME-Bugzilla-Product=gcalctool
X-GNOME-Bugzilla-Component=general
X-GNOME-Bugzilla-OtherBinaries=gnome-calculator
X-Ubuntu-Gettext-Domain=gcalctool

my-calc.desktop 的内容(更改的字段:名称、注释、执行、终端):

[Desktop Entry]
Name=My Calculator
Comment=Perform calculations with Python
Exec=python -i -c 'from math import *'
Icon=accessories-calculator
Terminal=true
Type=Application
StartupNotify=true
Categories=Utility;Calculator;

现在,使用 打开的文件浏览器窗口中应会出现“我的计算器”图标xdg-open .。双击它应打开一个带有python -i -c 'from math import *'ran 的终端窗口。您也可以通过搜索“我的计算器”从启动器搜索中运行它。您可以将图标(在文件浏览器窗口中)拖到左侧启动器栏(任务栏)中的空白处,以便将其放在那里。如果您将图标拖到桌面,Ubuntu 会说

移动“my-calc.desktop”时出错...移动文件时出错:权限被拒绝。

相反,按住 Alt 键并将其拖到桌面,Ubuntu 将显示一个菜单:“移动到此处”、“复制到此处”和“链接至此处”,选择“复制到此处”,快捷方式将被复制到桌面。

为了能够删除 /usr/share/applications 中的快捷方式,请输入:

gksudo xdg-open /usr/share/applications &

最好只删除您创建的快捷方式并保留其他快捷方式。

如果你找不到某个东西/usr/share/applications,但它出现在启动器搜索中,那么它可能在~/.local/share/applications/

进一步阅读:

https://help.ubuntu.com/community/UnityLaunchersAndDesktopFiles

答案3

这是我发现的最简单的方法:

  1. 启动您的程序(正在运行的程序会显示在启动器中)
  2. 右键单击启动器中的图标并选择“锁定到启动器”

如果链接不起作用,cd请进入/usr/share/applications然后编辑与您的应用程序匹配的文件(例如theProgramYouWant.desktop,然后只需将更改为Exec=指向该程序的可执行文件)。

答案4

基于Dennis Andrew Gutowski 的回答您可以在应用程序树中添加快捷方式程序,作为另一个附加共享。

您还可以在小程序中的“应用程序”旁边添加创建的快捷方式启动器,即快速启动器。

简单的拖放。从“应用程序”树中拖动快捷方式启动器。将其放在“应用程序”旁边。

相关内容