vi/vim 的基本用法
1、VI的三种命令模式
1)Command(命令)模式,用于输入命令;
2)Insert(插入)模式,用于插入文本;
3)Visual(可视)模式,用于视化的的高亮并选定正文;



2、文件的保存和退出。在命令模式下输":"符号,最下方会出现命令语句操作
1):w 保存;
2):w filename 另存为filename;
3):wq! 保存退出;
4):wq! filename 注:以filename为文件名保存后退出;
5):q! 不保存退出;
6):x 应该是保存并退出 ,功能和:wq!相同

3、光标移动
1)j 向下移动一行;
2)k 向上移动一行;
3)h 向左移动一个字符;
4)l 向右移动一个字符;
5)ctrl+b 向上移动一屏;
6)ctrl+f 向下移动一屏;
7)向上箭头 向上移动;
8)向下箭头 向下移动;
9)向左箭头 向左移动;
10)向右箭头 向右移动;
11)$ 移至行尾
12)gg 移动至文档开始
13)GG 移动到文档尾部
14)ctrl + f 向前翻页
15)ctrl + b 向后翻页

4、插入模式
1)i 在光标之前插入;
2)a 在光标之后插入;
3)I 在光标所在行的行首插入;
4)A 在光标所在行的行末插入;
5)O 在光标所在的行的上面插入一行;
6)o 在光标所在的行的下面插入一行;
7)s 删除光标后的一个字符,然后进入插入模式;
8)S 删除光标所在的行,然后进入插入模式;

5、文本内容的删除
1)x 一个字符;
2)#x 删除几个字符,#表示数字,比如3x;
3)dw 删除一个单词;
4)#dw 删除几个单词,#用数字表示,比如3dw表示删除三个单词;
5)dd 删除一行;
6)#dd 删除多个行,#代表数字,比如3dd 表示删除光标行及光标的下两行;
7)d$ 删除光标到行尾的内容;
8)J 清除光标所处的行与上一行之间的空格,把光标行和上一行接在一起;

6、恢复修改及恢复删除
1)u 撤消修改或删除操作;

7、视模式
可视模式是vim提供的,vi没有可视模式,如果我们想键入vi ***.txt时调用vim,则可以输入以下命令:
echo alias vi=vim >> /etc/profile
下次登录后,使用vi命令打开文件就直接调用vim了
8、复制及粘帖
1)yy 复制当前行
2)#yy 复制多行,#用数字表示,比如3yy表示复制三行;
3)如果在可视模式下,y可以复制选定的内容
4)p在光标之后粘帖
5) shift + p 在光标之前粘帖

9、查找和替换(SEARCH 为要查找的内容)
1)/SEARCH 注:正向查找,按n键把光标移动到下一个符合条件的地方;
2)?SEARCH 注:反向查找,按shift+n 键,把光标移动到下一个符合条件的
3):s /SEARCH/REPLACE/g 注:把当前光标所处的行中的SEARCH单词,替换成REPLACE,并把所有SEARCH高亮显示;
4):%s /SEARCH/REPLACE 注:把文档中所有SEARCH替换成REPLACE;
5):#,# s /SEARCH/REPLACE/g 注:#号表示数字,表示从多少行到多少行,把SEARCH替换成REPLACE;
