shell-vi

1、插入模式

i :从目前光标所在之处插入字符
a :从目前光标所在位置的下一个字符处开始插入字符
o :插入新的一行,从行首开始输入字符

2、底线模式

在插入模式下按Esc键进入命令行模式后,再输入冒号(:)进入底线模式

3、光标移动

GG:光标移动到文件的最后一行按
gg:光标移动到文件的开头第一行
$:光标移动到所在行的行尾
^:光标移动到所在行的行首

使用键盘的方向键完成光标上下左右移动

4、删除

x:每按一次删除光标所在位置的字符
3x :删除包含光标所在位置后的3个字符
dd :删除光标所在的行
3dd:删除光标所在往下的3行,包括光标所在的行

5、复制

yw :复制光标所在处到字尾的内容
yy :复制光标所在的行
p :粘贴到光标所在的下一行 

6、替换、撤销

r : 取代光标所在处的字符
R :连续取代字符直到按Esc为止
u :撤销上一步的操作,可以连续按u,撤销多个操作

7、查找、定位

:set nu #显示文件每一行的行号
:set nonu #不显示文件的行号
:set nowrap #不折行
:输入数字 #比如:5,再按回车,将跳到相应数字的行数,第5行
/关键字 #从当前光标开始往下查找关键字(第一个),按n, 继续往下查找,按N继续往上查找

8、字符替换

:1,$s/string1/string2/g #整篇文章中string1替换成string2
:1,$s/string1/string2 #当一行出现多个string1,只替换每行的第一个string1
:1,20s/apple/pear/g #指定区间替换,将1至20行的所有apple替换成pear

9、保存

:30,50 w filename #摘取文件某一段(30至50行)保存成另一个文件
:w filename #将文件保存为filename
:wq #保存文件并退出
:q #退出(若文件修改过,则会报错,不能直接退出)
:q! #强制退出,不保存修改的内容
:wq! #强制退出,并且保存修改的内容(如果当前文件被其他用户编辑,也强制修改该文件,并退出)

10、执行

chmod 777 test.sh    #给test.sh文件 添加可执行权限 

11、vi实例

如果vi正在编辑的过程中突然断电,那么之前编辑中的文件该怎么恢复呢?
>>打开一个文件,vi会生成一个暂存档(.swp)以备不测。如果非正常退出,再次打开文件时,会有一些提示。
>>重新打开一个shell终端,
查看当前工作路径下的隐藏文件:ls -a
恢复文件:vi -r .filename
删除暂存档: rm -f .filename.swp

posted @ 2019-11-22 15:57  LilyoO  阅读(226)  评论(0编辑  收藏  举报