Unity 使用什么命令启动程序

Unity 使用什么命令启动程序

工作中我需要使用 IBM Lotus Notes 电子邮件客户端。我安装它时没有遇到什么问题,但在启动电脑时却无法启动它。问题是我找不到如何从终端启动客户端,所以我无法将其放入启动列表中。

截至目前,我通过在 Unity 中搜索“Notes”来启动客户端,这会调出客户端,我只需按 Enter 即可开始运行它。有没有办法找出 Unity 使用哪个命令来启动客户端,以便我可以将其添加到启动列表中?

答案1

其中/usr/share/applications会有一个.desktop应用程序文件。这个文件可能没有最明显的名称,但你可以通过反复试验来找到它...

打开.desktop文件并查找第一的以...开头的行

Exec=

之后=是启动器用来启动程序的命令,因此您可以在终端中使用它。

您可能能够简化命令,例如,如果它是路径,但应用程序在您的路径中,您可以只输入应用程序的名称。或者,您的系统甚至可能有它的快捷方式。

例子

libreoffice-calc.desktop发现

Exec=libreoffice --calc

键入libreoffice --calc启动 libreoffice calc

python2.7.desktop发现

Exec=/usr/bin/python2.7

但我只能通过以下方式启动它python

$ file $(which python)
/usr/bin/python: symbolic link to python2.7

在文件中telegram.desktop我发现

Exec=/opt/telegram/Telegram

但是我只能用它启动它,Telegram因为我已经将其添加/opt/telegram到我的路径中:

$ echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/opt/telegram:/opt/lks-indicator:/snap/bin

(了解如何将目录添加到路径这里

答案2

有没有什么办法可以让我找出 Unity 使用哪个命令来启动客户端,以便我可以将其添加到启动列表中?

是的,命令位于.desktop文件中。请参阅/usr/share/applications/了解其中的许多命令。它可能被命名为notes.desktop

做一个

sudo updatedb
locate notes.desktop

或者如果没有显示任何内容,请使用

locate *.desktop | more

并扫描看起来像笔记的可能桌面文件。

然后执行more notes.desktop并查找可执行文件(Exec=)。


但我猜想该命令实际上是notes第一个。破折号将显示实际的命令名称。

相关内容