“set -o emacs”命令的含义是什么?

Zhe*_*hen 9 bash emacs

是什么意思,或者下面有什么作用?

set -o emacs 
Run Code Online (Sandbox Code Playgroud)

我在某处看到过,而且我是 Emacs 用户,所以这让我很好奇。

jau*_*ume 12

set -o emacs告诉shell理解 Emacs 编辑命令。

也就是说,您可以在 shell 提示符下使用 Emacs 命令,它们将按预期工作。例如:

  • CtrlK 删除一行。
  • CtrlT 转置两个字符。
  • MetaP 删除一个词。
  • CtrlP 转到上一行,即上一条命令。

此处有更多命令,请注意并非所有命令都有效,因为在命令行中并非所有命令都有意义。)

set -o emacs有工作bashksh并且zsh默认的shell启动和MacOS 10.15卡特琳娜。其他基于 Bourne 的 shell 也可能包含此功能。

对于bashzshemacs是默认的编辑模式。您还可以选择vi模式set -o vi(在这种情况下,您可能希望在终端配置文件的键盘选项卡中将 Option 设置为 Meta 键)。