是否可以使用键盘将控制序列发送到终端仿真器

Ern*_*est 6 terminal-emulator terminal xterm escape-characters

如果您echo -e '\eZ'在 xterm 中运行的 shell 中键入并按回车键,您将看到终端模拟器打印出一个晦涩的代码1;2c。这似乎表明 xterm 解释了 VT100 控制序列\eZESC Z,返回终端 ID)并相应地采取行动。

现在,如果你ESC Z在同一个控制台中按下,什么也不会发生。这是否意味着不能直接使用键盘发送控制字符?

我不确定这里发生了什么,因为按下CTRL s(控制流)确实会停止控制台输出,直到您按下CTRL q。那么为什么CTRL s/q有效而不是ESC Z

Kyl*_*nes 7

VT100 响应作为输出发送给它们的字符序列。所以回显字符有效,因为终端将其视为输出。输入字符;只有当接收计算机响应字符时,终端才会响应。您的典型 shell 不回显 ESC,它将 ESC 解释为某些交互式输入命令的前缀。运行cat并键入 ESC Z RETURN,您将看到通常的 VT100 响应。