Linux下有很多文本编辑器,其中系统(不管哪个分支)都会自带nano和vim这两个最基本的编辑器。vim相当于vim的升级版。今天将重点分析一下vim与nano的各自功能及区别。
1.nano
直接在命令行中敲入nano newfile即可打开文件或新建文件。
可以看到第一行反白介绍了nano的版本号以及被编辑的文件名称。接下来就是可编辑区域,这里由于newfile文件是一个新建文件,内容为空,所以编辑区域没有任何文本文字。再看最后的两行,这是nano下可以使用的一些快捷键,其对应的含义翻译如下:
- ctrl+G: 取得在线帮助
- ctrl+O: 保存文件,如果你有权限就可保存修改的文件
- ctrl+R: 从其他文件读入数据,可将某个文件的内容贴在本文件中
- ctrl+Y: 显示前一页
- ctrl+K: 剪切当前行的内容
- ctrl+C:‘ 显示光标所在的位置
- ctrl+X: 退出nano,如有有修改过文件,则会提示是否要保存修改的内容
- ctrl+J: 调整文本格式
- ctrl+W: 查找命令,按下后会跳转到末行的反白位置,输入要查找的内容回车即可。
- ctrl+V:显示下一页
- Ctrl+U:撤销截切命令,如果该位置有多行被剪切,会还原剪切的所有内容,但是多次按下Ctrl+U会多次还原,这可能是一个bug。这个快捷键与windows下的ctrl+v类似。读者可以先试着这样理解。
- Ctrl+T: 还不知道是什么意思,貌似是检查拼写,但不知道怎么用
nano是入门该学习得最佳工具,这里我们只需要知道如何进入编辑,如何保存退出即可。接下来我们来看看vim编辑器。
2.vim编辑器
vim是老式的文字处理器vi的升级版,相对于较为简单的nano,其功能已经很齐全。
1)vim的模式
vim分为三种模式
- 一般模式:以vim打开或新建一个文件就可以直接进入一般模式,在此模式中,你可以使用上下左右来进行光标的移动,可以删除字符或整行,可以复制粘贴文件数据。
- 编辑模式:顾名思义,就是可以编辑文本的模式,在一般模式下,按下“i,I,o,O,a,A,r,R”这些字母可进入编辑模式,进入编辑模式后在左下方会有INSERT或REPLACE的字样。在编辑模式下按下ESC键会退出到一般模式下。
- 命令行模式:在一般模式下,输入” :, / , ? “这三个字符中的任意一个会将光标移动到当前页面最下面的一行,在这个模式中可以进行数据查找、替换、保存、离开vim等操作。
使用vim filename可进入vim一般模式:
vim的块选择
在vim中进行的操作一般都是以行或者单个字符作为对象,那么要进行一个区域块的操作该怎么办呢?这时可使用vim的块选择功能。按下(不需要长按)v在再使用上下左右键移动光标,光标经过的地方将会被选中。
还有其他两种选择方式:
V(大写):光标经过的行将会被选中。
ctrl+v:光标经过的长方形块将会被选中。
选中后再按下y可对选中的区域进行复制,按下d可将选中的区域删除。
多窗口功能
在命令行模式下输入“:sp{filename}”即可使用多窗口功能。filename可以不用加,如果想在新的窗口下启动另一个文件就需要加上filename,否则出现在窗口中的是同一个文件。
重要热键
按住Ctrl + W,然后再加上h, j, k, l,分别表示向左、下、上、右移动窗口
- Ctrl + w + h:向左移动窗口
- Ctrl + w + j: 向下移动窗口
- Ctrl + w + j: 向上移动窗口
- Ctrl + w + l: 向右移动窗口
- Ctrl + w + w:这个命令会在所有窗口中循环移动
- Ctrl + w + t:移动到最左上角的窗口
- Ctrl + w + b:移动到最右下角的窗口
- Ctrl + w + p:移动到前一个访问的窗口