工作中我需要使用 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
第一个。破折号将显示实际的命令名称。