有时,我通过 ssh 远程登录到我的远程桌面,并且我想通过 ssh 调用 GUI 应用程序,以便在我的笔记本电脑上远程显示它。
但是,我不知道二进制名称是什么,因为我通常使用通用术语从破折号中调用应用程序。
是否存在一个命令行(CLI)界面,可以在终端中执行 Unity Dash 中的搜索并在结果列表中获取应用程序名称及其可执行命令的路径?
我想要这样的东西:
# dash --search "disks"
Name Executable
Disks /usr/bin/gnome-disks
答案1
这是一个可能有用的脚本:
#!/bin/bash
for desktopFile in $(grep -irl "$1" /usr/share/applications/) ; do
grep --color=never 'Name=' "$desktopFile"
grep --color=never 'Exec=' "$desktopFile"
echo ''
done
假设您将其保存为“searchapps”,它的作用如下:
$ searchapps disks
Name=Disk Image Writer
Exec=gnome-disks --restore-disk-image %U
Name=Disks
Exec=gnome-disks
请注意,除了 之外,您可能还想搜索其他文件夹/usr/share/applications
。您必须相应地修改脚本。
答案2
一个方便的替代方法是用您最喜欢的文件浏览器打开/usr/share/applications
(nautilus
在标准 Ubuntu、pcmanfm
在 Lubuntu、thunar
在 Xubuntu...)然后双击您在那里找到的图标即可启动您的程序。
nautilus --no-desktop /usr/share/applications &
pcmanfm /usr/share/applications &
thunar /usr/share/applications &
我在终端窗口中通过远程访问进行了测试
ssh -X user@IP-adress
它对我有用。