![终端中 esc 键的用途是什么?](https://linux22.com/image/189360/%E7%BB%88%E7%AB%AF%E4%B8%AD%20esc%20%E9%94%AE%E7%9A%84%E7%94%A8%E9%80%94%E6%98%AF%E4%BB%80%E4%B9%88%EF%BC%9F.png)
打开终端按 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插入t
3次。
答案2
在禁用按键重复的终端上可能很有用。编辑:我想这并不能真正回答你的问题。我可以看到它被用来在命令中将字母加倍,例如 hello,它有 2 个 l。
答案3
您正在使用 Esc 查看行为的特定实例。它不会复制击键本身。
来自 Bash 手册:“如果您没有 Meta 或 ALT 键,或另一个用作 Meta 键的键,则可以通过先键入 ESC,然后键入 k 来生成相同的击键。这两个过程都称为元化 k 键”。
然后在命令行中发生的事情是您将进入readline
编辑器。根据当前的情况set -o
,您可能会处于 vi 模式或 emacs 模式,或者处于 readline 自己的编辑命令中。
除 Bash 之外的 Shell 也有自己的变体。这不是您看到的最终行为。