vi 中按了 Ctrl+S 后死机不能动怎么办?
我们下意识想保存文档时,会不知觉地按下 Ctrl+S 组合键。但如果是正在 Linux 的 Shell 中使用 vi 编辑文本,这么按就糟了,会直接出现卡住、不能动、卡死的现象。
不过,后来我搞明白了,这种卡住、卡机、死机,都是一种假象。解决方法也很简单:再按下 Ctrl+Q 就能解除。
是不是有种知道真相后眼泪掉下来的感觉啊?我当初也是。
再进一步解释下到底是怎么回事?为什么 vim 要有这样的一个假死功能?
你可以做个实验,用 vim 打开一个空文档,先按下 Ctrl+S 再随便按几个数字,你会发现 vim 一动不动,然后再按 Ctrl+Q,就能看到,咦,刚刚输入的数字又出来了。
因为 Ctrl+S 是 vim 关闭屏幕回显,只接受输入不提供反馈的静默模式。回忆回忆,这有点儿像我们在 Linux 终端里输入密码时的感觉,是不。
问题解决了,我们再想想更深层的原因,在和 Linux 打交道的过程里,为什么这样闹心的小问题会反复出现?
我反思,这是没有系统地学习 Linux、学习 Linux 命令,一直靠边查搜索引擎边学,就是容易出现这种问题。
系统学习的痛,是不是就是一直野路子、从来不花钱的痛。Pony Ma 灵魂拷问过,不充钱你会变得更强吗?
其实我们也不是没有花钱解决问题的思维。
关键是,我们不想被收割,想充钱要去哪里充!!去哪里充,更便宜,更实在?!
讲讲我的经验给你参考下,我是靠极客时间上的这门系统性极强的尹会生大牛的《Linux实战技能100讲》视频课程给自己的 Linux 补了补课。
一般的 Linux 仅仅是简单地罗列和讲解命令,并不值得学。但实话说,尹会生这门运营课以点带面,侧重于让人认真理解 Shell 和 核心的命令,很适合拿来给自己打基础。
一般的视频课动不动就想收割我们一个月的工资钱,这个课不会,也就100出头就能买到。
不仅适合计算机系的朋友们,像理论物理、理论化学、地科生科这样长期和 Linux 系统打交道、提交任务排队列的朋友,我觉得也最好不要错过。而且,是视频课啊,跟着操作很容易学到。
课程地址:Linux实战技能100讲
哪怕不买,我认为如果是有心人,进去研究一下课程目录都覆盖了哪些知识点,也是极好的。
以上。
-----
vi 中按了 Ctrl+S 后死机不能动怎么办?的更多相关文章
- linux vi 中按了ctrl+s后没法退出
linux vi 中按了ctrl+s后无法退出 Linux 中使用vi编辑文件 不小心按了Ctrl + S (习惯了) 结果终端就跟死了一样, 解决办法: Ctrl+Q
- VMware虚拟机中的CentOS7安装Nginx后本机无法访问的解决办法
VMware虚拟机中的CentOS7安装Nginx后本机无法访问的解决办法 在linux上安装nginx 请参考:Linux Centos7 安装 nginx 在虚拟机centos7上安装nginx之 ...
- Vmware 15.5 ubuntu 12.04.5-desktop-i386.iso insmod后死机
就是makefile没有问题,在其他同学的相同环境下也没有问题,但是在我的虚拟机里就会死机,复制了其他同学的虚拟机过来也会死机,所以猜想是VMware的问题. 于是下载了Virtual box,然后安 ...
- Linux 操作系统死机故障处理方法总结
通常在出现系统崩溃后,大家会担心再次出现故障,但是发现系统各日志中并没有记录到任何死机前后的信息,无法分析故障原因,认为已经无药可救.但是,实际上,Linux 有多种机制来保证发生系统崩溃后,可以获取 ...
- [转发]dsdt解决睡眠唤醒死机
登录 注册 首页 热门话题 最新发布 简单模式 详细模式 dsdt解决睡眠唤醒死机 Leave a reply 首先,感谢x5115x提供了一个相对比较完整的THINKPAD T410在MAC下的 ...
- Windows死机的话,可能的一些猫病
一.由硬件引起的原因 [散热不良] 显示器.电源和CPU在工作中发热量非常大,因此保持良好的通风状况非常重要,如果显示器过热将会导致色彩.图象失真甚至缩短显示器寿命.工作时间太长也会导致电源或显示器散 ...
- 关于单片机编程里面调用sprintf死机的解决方法及原因分析
好久之前的做的笔记,这里贴出. char String[100];//直接用数组代替指针即可解决 下面代代码下载至单片机中,发现会出现单片机死机问题 #include "stdio.h&qu ...
- VMware虚拟机从安装到激活再到创建虚拟机解决黑屏、卡、死机系列问题教程第二篇
第二篇:在VMware中创建一个虚拟机(黑屏死机卡在最下面简单说一下你就懂了) 1.我们要打开我们已经安装好的VMware,然后点击创建新的虚拟机 2.然后选择自定义 3.下面这个默认,直接下一步 4 ...
- Vi或者Vim下按了ctrl+s后终端卡住了咋办?
在Vi或者Vim下按了ctrl+s后终端卡住了咋办? 习惯了在windows下写程序,也习惯了按ctrl+s 保存代码. 在用vim的时候,也习惯性的按ctrl+s结果就是如同终端死掉了一样. 原因: ...
随机推荐
- Azure 上通过Automation 实现定时开关虚拟机
更多内容,请关注公众号: Azure Automation 可以提供一些自动化的功能,比如我们可以指定在每天早上6点开启虚拟机,每天晚上8点关闭虚拟机.同时还提供一些基于监控参数的自动化配置.今天的主 ...
- python函数编程-装饰器decorator
函数是个对象,并且可以赋值给一个变量,通过变量也能调用该函数: >>> def now(): ... print('2017-12-28') ... >>> l = ...
- 在 ASP.NET Core 中启用跨域请求(CORS)
本文介绍如何在 ASP.NET Core 的应用程序中启用 CORS. 浏览器安全可以防止网页向其他域发送请求,而不是为网页提供服务. 此限制称为相同源策略. 同一源策略可防止恶意站点读取另一个站点中 ...
- 文件上传报错:Unknown: file created in the system's temporary directory
nginx+php下文件上传成功,但会有错误提示如下: <b>Notice</b>: Unknown: file created in the system's tempor ...
- IP地址的格式和分类
IP地址 IP地址时IP协议提供的一种地址格式,它为互联网上的网络设备分配一个用来通信的逻辑地址,目前分为IP v4和IP v6两种,v4的意思是version4,v6是同样的意思. IP v4 IP ...
- Java源码记录 - AbstractMap
路径java.util.AbstractMap ()构造方法 /** * 唯一的构造器.(一般由子类隐式调用) */ protexted AbstractMap(){ } size()返回当前map的 ...
- JS---DOM---自定义属性引入和移除
总结:在html标签中添加的自定义属性, 如果想要获取这个属性的值, 需要使用getAttribute("自定义属性的名字")才能获取这个属性的值 html标签中有没有什么自带的属 ...
- zabbix获取一周内各个等级告警的次数
# encoding:UTF-8 import xlsxwriter import datetime import pymysql import numpy as np import pandas _ ...
- Android WebView与H5联调技巧
版权声明:本文为xing_star原创文章,转载请注明出处! 本文同步自http://javaexception.com/archives/78 背景: 突然想写一篇关于Android WebView ...
- PC端视频播放器
视频播放器:Potplayer 它是一款纯净的.无广告.极速