终端中 esc 键的用途是什么?

终端中 esc 键的用途是什么?

打开终端按 esc 键,然后按数字后跟字母。结果是字母重复的次数

例子: esc 3 t

结果是: ttt

有这方面的用例吗?

答案1

这不是终端的功能,而是在终端中运行的一些应用程序的功能,包括 bash 和 zsh 等常见 shell。

Escape后面跟着一个数字是a前缀参数。这个功能来自Emacs。每个 Emacs 命令都可以使用前缀参数来影响其行为。约定是,对于有意义的命令,前缀参数是重复计数。例如, Escape 4 2 Right向右移动 42 个字符。负参数表示有意义的“相反”行为,例如 Escape - 2 Right向左移动 2 个字符。同理, Escape 3 t插入t3次。

答案2

在禁用按键重复的终端上可能很有用。编辑:我想这并不能真正回答你的问题。我可以看到它被用来在命令中将字母加倍,例如 hello,它有 2 个 l。

答案3

您正在使用 Esc 查看行为的特定实例。它不会复制击键本身。

来自 Bash 手册:“如果您没有 Meta 或 ALT 键,或另一个用作 Meta 键的键,则可以通过先键入 ESC,然后键入 k 来生成相同的击键。这两个过程都称为元化 k 键”。

然后在命令行中发生的事情是您将进入readline编辑器。根据当前的情况set -o,您可能会处于 vi 模式或 emacs 模式,或者处于 readline 自己的编辑命令中。

除 Bash 之外的 Shell 也有自己的变体。这不是您看到的最终行为。

相关内容