IT技术博客大学习 共学习 共进步
全部 移动开发 后端 数据库 AI 算法 安全 DevOps 前端 设计 开发者

Ctrl+S导致Putty或Xterm命令行无响应问题

灵犀志趣 2014-04-29 22:34:12 累计浏览 2,650 次
本机暂存

只要使用的第一个编辑器不是VIM,或者Emacs的朋友,几乎在编辑过程中最常用的快捷键恐怕就是CTRL+S 了。而对于经常使用Putty或者Xterm之类命令行控制Linux、Unix系统的朋友,恐怕也经常遇到和我一样的问题,本能的按下CTRL+S之后,发现命令行完全没有响应了。无奈之下,只能重开窗口,重新打开新的命令行界面。

每次重开命令行,都需要先连接服务器,kill掉曾经启动的程序,然后再重新执行他们。

其实,这是因为CTRL+S启动了XOFF(关闭流控制)。这会让终端正常接受按键操作,但是并不会做任何输出,感觉就像命令行没有响应了一样。
这篇文章将为您提供三大解决方案:

  1. 立竿见影的解决方案

  2. 一劳永逸的解决方案

  3. 一箭双雕的解决方案

立竿见影的解决方案

直接CTRL+Q,打开流控制(XON). 如果在CTRL+Q操作之前,你做了其他一些按键操作,此时,您应该能在终端重新看到这些输出了。


一劳永逸的解决方案

可以直接在.bashrc中禁止CTRL+S命令发送XOFF。

在您的.bashrc中添加如下两行( 可以man stty查看更多选项):

stty ixany
stty ixoff -ixon

一箭双雕的解决方案

其实,我们真的可以让CTRL+S在VIM中用于保存文件:


.bashrc中的修改
stty ixany
stty ixoff -ixon
stty stop undef
stty start undef

.vimrc中的修改, CTRL+S保存当前文件
map <C-s> :w<cr>
imap <C-s> <ESC>:w<cr>a

同分类推荐文章

  1. How to Set Up Homebrew Tap for Private CLI Tools: A Complete Guide (2026-05-27 02:13:03)
  2. WARNING: detected duplicate paths to the same disk导致crs无法正常启动故障解决 (2026-05-24 22:24:49)
  3. Terraform 极简入门:从 AWS-CLI 到基础设施即代码(IaC) (2026-05-20 08:00:00)

查看更多 DevOps 文章 →

建议继续学习

  1. Linux如何统计进程的CPU利用率 (累计阅读 16,203)
  2. 我的 RHCA 之路 (累计阅读 13,926)
  3. Linux内存点滴 用户进程内存空间 (累计阅读 13,049)
  4. 给程序员新手的一些建议 (累计阅读 13,024)
  5. Linux 性能监控、测试、优化工具 (累计阅读 12,950)
  6. 关于linux内存free的一些事情 (累计阅读 12,749)
  7. 高效Linux用户需要了解的命令行技能 (累计阅读 12,745)
  8. ps - 按进程消耗内存多少排序 (累计阅读 12,603)
  9. Google怎么用linux (累计阅读 12,466)
  10. find命令的一点注意事项 (累计阅读 11,785)