vi 小技巧

阅读更多
vi可以同时编辑多个文件,多个文件间可以切换,并复制内容
如:vi hosts /etc/hosts

:n 编辑下一个文件
:N 编辑上一个文件
:files 列出目前这个vi的打开的所有文件


:set nu 设置行号
:set nonu 取消行号
:set all 显示目前所有的环境参数设置值
:set hlsearch 就是高亮度查找
:set nohlsearch 就是取消高亮度查找


:G 到最后一行
:nG n为数字,移动到第n行
:gg 移动到第一行
:d1G 删除光标所在到第一行的所有数据
:dG  删除从光标所在到最后一行的所有数据
:d$  删除从光标所在处到改行的最后一个字符
:d0  删除从光标所在处到改行的最前面一个字符
:nyy n为数字,复制光标所在的向下n行
:y1G 复制光标所在行到第一行的所有数据
:yG  复制光标所在行到最后一行的所有数据
:y0  复制光标所在的那个字符到该行行首的所有数据
:y$  复制光标所在的那个自负到该行行尾的所有数据

:n1,n2s/word1/word2/g  在n1与n2行之间查找word1这个字符串,并将该字符串替换为word2
:1,$s/word1/word2/g  在第一行与最后一行之间查找word1这个字符串,并将该字符串替换为word2

:w!  如果文件属性为“只读”时,强制写入该文件
:w filename 将标记的数据保存成另一个文件
:r filename 在标记的数据中,读入另一个文件的数据,将"filename"这个文件内容加到光标所在行后面
:n1,n2 w filename 将n1到n2的内容保存成filename这个文件
:! command 暂时离开vi到命令行模式下执行command的显示结果。例如:
    "!ls /home" 即可在vi当中查看/home下面以ls输出的文件信息

你可能感兴趣的:(vi)