当从命令行运行某些程序时,which
可以使用该命令来找出实际调用了哪个可执行文件。这很棒。我希望能够找到使用图形启动器启动的程序的相关信息。
例如,如果我按下 Super 键(上面有 Windows 徽标的键)并开始输入“声音”,程序“录音机”就会弹出,我可以单击它来启动它。然后它启动了,很好,但我怎么知道我刚刚启动的是哪个可执行文件?名称不一定与我单击的名称“录音机”相同。
对于这个例子,我可以通过一些猜测来找出答案,就像这样:
ps -A | grep sound
1848 tty2 00:00:00 gsd-sound
13645 tty2 00:00:00 gnome-sound-rec
所以它可能是 gnome-sound-recorder,然后我可以做
which gnome-sound-recorder
发现它实际上是/usr/bin/gnome-sound-recorder
。
但这是假设可执行文件与“声音”有关,如果不是这样呢?有没有更好的方法来找出启动了哪个可执行文件?
答案1
您可以在以下两个位置之一找到桌面启动器:
/usr/share/applications/
~/.local/share/applications
Exec 行就是所执行的内容,因此......
grep Exec audacious.desktop
(随机示例)将显示
Exec=audacious %U
TryExec=audacious