GNOME 中的“运行命令控制台”(Alt+F2)是什么?

GNOME 中的“运行命令控制台”(Alt+F2)是什么?

不是太明白运行命令控制台是啥,有两点不明白。

  1. 重启 gnome-shell 有个很出名的方法:Alt+F2 然后按 “r”。这个 “r” 是什么?只是运行控制台的一个内部命令吗?那么运行控制台有多少个内部命令呢?
  2. 我可以通过运行控制台执行自己的脚本。但是,我必须指定完整路径,这样脚本才能工作。如果我使用快捷方式 ~/my-path/script,脚本将在编辑器中作为 Nautilus 中的 Display 命令打开。我不明白为什么。

答案1

是的,“r”是运行对话框中的内部命令之一。它们记录在https://wiki.gnome.org/Projects/GnomeShell/CheatSheet#Developer_tools

  • ‘r’ 或 ‘restart’:重新启动 shell
  • ‘rt’:重新加载 shell 主题(编写/修改主题时非常有用)
  • ‘lg’:打开 Looking Glass,它是浏览器中 DevTools 的 gnome-shell 版本
  • 'debugexit':以错误退出代码退出 gnome-shell;可能仅在您在 shell 本身上进行开发时有用

对于第二部分,我们需要确切地了解该_run()函数的作用https://gitlab.gnome.org/GNOME/gnome-shell/-/blob/main/js/ui/runDialog.js

首先,它处理上面列出的内部命令。

接下来,它使用 解析输入GLib.shell_parse_argv(),它只是将其拆分为像 /bin/sh 这样的单词,而不进行任何类型的扩展。然后它尝试直接使用 运行结果GLib.spawn_async()。这将在 中搜索程序$PATH,这就是为什么像“firefox”这样的内容会按预期工作的原因。

如果失败,它会获取您的全部输入,将“~”扩展至您的主目录,并尝试将其作为文件打开。

相关内容