Ubuntu终端中避免系统输出打断输入行的实现方法咨询
Ubuntu终端中避免系统输出打断输入行的实现方法咨询
嘿,我太懂这种烦躁的场景了——正专注敲命令呢,突然cloud-init这类后台系统输出跳出来,把你正在输入的内容给冲得支离破碎,连自己写了啥都看不清,简直抓狂!
给你分享几个实用的解决办法,亲测好用:
- 快速应急快捷键:当输入被打断时,直接按
Ctrl + L,这个快捷键会清屏并把你正在输入的命令行重新显示在屏幕顶部,就能继续顺畅输入了。唯一小缺点是会清空当前屏幕的历史输出,如果想保留那些输出,看下面的方法。 - 自定义专属快捷键(永久生效):如果你想更顺手,给终端绑定一个专门重绘输入行的快捷键就行。打开你的
~/.bashrc文件,添加这一行:
保存后执行bind '"\e[R": redraw-current-line'source ~/.bashrc让设置立刻生效,之后再遇到输入被打断的情况,按下Alt + R,终端就会把你正在输入的内容重新显示在干净的行上,完全不会清空之前的系统输出,超实用! - 终端状态重置命令:如果快捷键临时不好使,还可以快速输入
stty sane然后回车,这个命令会重置终端的状态,帮你恢复正常的输入环境,不过输入的时候尽量快一点,避免又被打断~
这些方法本质上都是让终端重新读取当前的输入缓冲区,把你正在敲的内容在没有干扰的位置重新绘制出来,完美解决系统输出抢终端的问题。
备注:内容来源于stack exchange,提问作者Hab
相关产品推荐
相关产品推荐

