文章目录
vi和vim
Vi是unix/linux操作系统中最经典的文本编辑器,只能是编辑字符,不能对字体、段落进行排版;它既可以新建文件,也可以编辑文件;它没有菜单,只有命令,且命令繁多,vi适用于文本编辑。
Vim是从 Vi 发展出来的一个文本编辑器,可以看做是 Vi 的增强版本,可以主动的以字体颜色辨别语法的正确性,方便程序设计代码补全、编译及错误跳转等方便编程的功能特别丰富,vim适用于coding。
模式
vi/vim共分为三种模式,分别是一般模式、编辑模式、命令模式,转换关系如下:
一般模式
在一般模式下,可以使用快捷键(列在文章末尾):
就不一一演示了
输入指令vim filename就能进入一般模式了:
编辑模式
在一般模式下输入以下快捷键就能进入到编辑模式,进行文本编辑:
| 快捷键 | 作用 |
|---|---|
| i | 从目前光标所在处输入(常用) |
| I | 在目前所在行的第一个非空格符处开始输入 |
| a | 从目前光标所在的下一个字符处开始输入 |
| A | 从光标所在行的最后一个字符处开始输入 |
| o | 在目前光标所在的下一行处输入新的一行 |
| O | 在目前光标所在处的上一行输入新的一行 |
| r | 只会取代光标所在的那一个字符一次 |
| R | 会一直取代光标所在的文字,直到按下 ESC 为止 |
(
插播反爬信息)博主CSDN地址:wzlodq.blog.csdn.net/
命令模式
| 常用命令 | 作用 |
|---|---|
| :w | 将编辑的数据写入硬盘档案中 |
| :w! | 若文件属性为『只读』时,强制写入该档案 |
| :q | 退出 vi |
| :q! | 若曾修改过档案,又不想储存,使用 ! 为强制离开不储存档案。 |
| :wq | 保存并退出,若为 :wq! 则为强制保存并退出(常用) |
| :w [filename] | 将编辑的数据储存成另一个档案(类似另存新档) |
| :r [filename] | 在编辑的数据中,读入另一个档案的数据并加到游标所在行后面 |
| :! command | 暂时离开 vi 到指令行模式下执行 command 的显示结果 |
| :! ls /home | 即可在 vi 当中察看 /home 底下以 ls 输出的档案信息 |
快捷键
| 快捷键 | 作用 |
|---|---|
| h 或 ← | 光标向『左』移动一个字符 |
| j 或 ↓ | 光标向『下』移动一个字符 |
| k 或 ↑ | 光标向『上』移动一个字符 |
| l 或 → | 光标向『右』移动一个字符 |
| Ctrl + f | 屏幕向『下』移动一页 |
| Ctrl + b | 屏幕向『上』移动一页 |
| Ctrl + d | 屏幕向『下』移动半页 |
| Ctrl + u | 屏幕向『上』移动半页 |
| + | 光标移动到非空格符的下一行 |
| - | 光标移动到非空格符的上一行 |
| 0 或 [Home] | 移动到这一行的最前面字符处 |
| $ 或 [End] | 移动到这一行的最后面字符处 |
| H | 光标移动到这个屏幕的最上方那一行的第一个字符 |
| M | 光标移动到这个屏幕的中央那一行的第一个字符 |
| L | 光标移动到这个屏幕的最下方那一行的第一个字符 |
| G | 移动到这个档案的最后一行 |
| gg | 移动到这个档案的第一行 |
| n | 光标向后面移动 n 个字符距离 |
| n | 光标向下移动 n 行 |
| /word | 向光标之下寻找一个名称为 word 的字符串。 |
| ?word | 向光标之上寻找一个字符串名称为 word 的字符串 |
| n | 代表重复前一个搜寻的动作 |
| N | 与 n 刚好相反,为『反向』进行前一个搜寻动作 |
| x | 为向后删除一个字符 (相当于 [del] ) |
| X | 为向前删除一个字符(相当于 [backspace] ) |
| nx | 连续向后删除 n 个字符 |
| dd | 删除游标所在的那一整行(常用) |
| ndd | 删除光标所在的向下 n 行 |
| d1G | 删除光标所在到第一行的所有数据 |
| dG | 删除光标所在到最后一行的所有数据 |
| d$ | 删除游标所在处,到该行的最后一个字符 |
| d0 | 删除游标所在处,到该行的最前面一个字符 |
| yy | 复制游标所在的那一行(常用) |
| nyy | 复制光标所在的向下 n 行 |
| y1G | 复制游标所在行到第一行的所有数据 |
| yG | 复制游标所在行到最后一行的所有数据 |
| y0 | 复制光标所在的那个字符到该行行首的所有数据 |
| y$ | 复制光标所在的那个字符到该行行尾的所有数据 |
| p | 将已复制的数据在光标下一行贴上(常用) |
| P | 将已复制的数据在光标下一行贴上 |
| J | 将光标所在行与下一行的数据结合成同一行 |
| c | 重复删除多个数据 |
| u | 复原前一个动作(常用) |
| [Ctrl]+r | 重做上一个动作(常用) |
| . | 重复前一个动作 (常用) |
原创不易,请勿转载(
本不富裕的访问量雪上加霜)
博主首页:wzlodq.blog.csdn.net/
微信公众号:唔仄lo咚锵
如果文章对你有帮助,记得一键三连❤