注意:如在编辑模式,需按下【Esc】退出编辑模式,回到一般模式
a.进入命令行模式 (指令前带 ":",再敲指令前先敲 ":" )
:w : 保存编辑的内容
:w! :强制写入该文件,但跟你对该文件的权限有关
:q : 离开vi
:q! : 不想保存修改强制离开
:wq :保存后离开
:x : 保存后离开
ZZ :若文件没有更动,则不保存离开,若文件已经被更改过,则保存后离开
:w filename :将编辑的数据保存成另一个文件(类似另存)
:r filename : 在编辑的数据中,读入另一个文件的数据。
即将【filename】 这个文件的内容加到光标所在行后面
:n1,n2 w filename :将n1到n2的内容保存成filename这个文件
:! command :暂时离开vi 到命令行模式下执行command的显示结果;
例如 【:! ls /home】即可在 vi 当中察看/home底下以ls输出的文件信息
:set nu :显示行号
:set nonu :与 set nu 相反,为取消行
b.查找(指令前带 ":",再敲指令前先敲 ":" )
/xxx: 向光标向下寻找一个名称为xxx的字符串
?xxx:向光标向上寻找一个名称为xxx的字符串
n:代表重复前一个查找的动作
N:与n刚好相反,为【反向】进行行前一个查找动作
:n1,n2s/xxx/yyy/g:n1与n2为数字,在第n1与n2行之间查找xxx这个字符串,
并将该字符串替换为yyy
:1,$s/xxx/yyy/g: 从第一行到最后一行查找xxx字符串,并将该字符串替换为yyy
:1,$s/xxx/yyy/gc:从第一行到最后一行查找xxx字符串,并将该字符串替换为yyy,
且在替换前提示用户确认是否进行替换