pts*_*pts 6 linux terminal signal kernel
当我在 Karmic Koala 的任何伪终端(xterm、gnome-terminal、rxvt、文本控制台和 SSH)中按 Ctrl- C时,该字符串^C会被回显到 Ubuntu Karmic Koala 的终端。这在 Ubuntu Jaunty Jackalope 中没有发生。我想摆脱额外的^C. 例子:
$ cat
foo
foo
^C
$ _
Run Code Online (Sandbox Code Playgroud)
我通过键入C、A、T、Enter、F、O、O、Enter、 Ctrl- C得到了上述内容。我想摆脱^C, 并为相同的按键获得这个:
$ cat
foo
foo
$ _
Run Code Online (Sandbox Code Playgroud)
我尝试了 setting stty -echoctl,它解决了 SSH 之外的 rxvt 和 xterm 问题,但它在HT从 Ubuntu Hardy 系统进行SSH 连接时创建了一个单字符,并且它创建了一个带有 Unicode 的框,0003而不是^C在 gnome-terminal 中。当我按下 Ctrl- C时,我绝对不想看到任何东西。我正在使用
Linux linux 2.6.31-20-generic-pae #57-Ubuntu SMP Mon Feb 8 10:23:59 UTC 2010 i686 GNU/Linux
Run Code Online (Sandbox Code Playgroud)
我在所有系统和所有终端仿真器中都有这些终端设置:
ioctl(0, TCGETS, {c_iflags=0x2502, c_oflags=0x5, c_cflags=0xbf, c_lflags=0x8a3b, c_line=0, c_cc="\x03\x1c\x7f\x15\x04\x00\x01\x00\x11\x13\x1a\x00\x12\x0f\x17\x16\x00\x00\x00"})
Run Code Online (Sandbox Code Playgroud)
这样做并记录结果:
stty -a
Run Code Online (Sandbox Code Playgroud)
然后尝试:
stty sane
stty -echoctl
Run Code Online (Sandbox Code Playgroud)
然后,如果 Ctrl-C 以您期望的方式工作:
stty -a
Run Code Online (Sandbox Code Playgroud)
并将结果与您在上面记录的结果进行比较。
编辑:
这已作为针对gnome-terminal的错误提交。您可以使用printf '\003\n'. PuTTY 和 xterm 显示一个空行,但 gnome-terminal 显示一个 Unicode 框。