vi编辑器的使用

vi简介

  • vi可以执行输出、删除、查找、替换、块操作等众多文本操作,而且用户可以根据自己的需要对其环境进行定制.只是一个文本编辑器,不能排版。vi没有菜单,只有命令
  • vi有三种基本工作模式,分别是:命令模式(command mode)、插入模式(insert mode)和末行模式(last line mode)

vi三种工作模式

 

vi编辑器的使用

  • 进入vi:

–  命令“vi      文件名”

–  命令“vi”,在退出vi时再指定文件名

    1. 选项“+n”,表示希望在进入vi之后,光标处于文件中第n行上。

    2.选项“+”表示希望在进入vi之后光标处于文件最末行。

用vi打开文件后,在命令模式下,先按希望定位到的行号

然后再按G键,可以实现行的定位。“#G”----其中#代表数字

  • 保存文件:

–  1.在命令模式下,连按两次大写字母<Z>。

–  2.在末行模式下:

 :w  保存当前编辑的文件,但并不退出vi,而是继续等待用户输入命令。

         :w  <newfile>       另存为

         :w! <newfile>  把当前文件的内容保存到指定的文件newfile中,如果newfile已经存在,则覆盖原有内容。

  • 在末行模式下,有四种方法可以退出vi返回到shell:

–   :q         系统退出vi返回到shell。在用此命令时,若编辑的文件没有被保存,则vi在窗口的最末行给出提示信息。

–   :q!       vi放弃所作修改而直接退到shell下。

–   :wq     先保存文件,然后再退出vi返回到shell。

–   :x         该命令的功能与命令模式下的ZZ命令功能相同

 

 

复制

  • 命令模式下输入yy或nyy,表示复制当前行或当前行开始的连续n行到缓冲区,n是一个具体的整数。
           例如: “6yy”表示复制从光标所在的该行“往下数”6行文字到缓冲区。
  • 命令模式下P或p将缓冲区内的字符贴到光标所在位置。其中,P是粘贴到光标所在行的上面,p是下面。

移动

  • 命令模式下输入dd或ndd,表示剪切当前行或当前行开始的连续n行到缓冲区,n是一个具体的整数。
           例如: “6dd”表示剪切从光标所在的该行“往下数”6行文字到缓冲区。
  • 命令模式下P或p将缓冲区内的字符贴到光标所在位置。其中,P是粘贴到光标所在行的上面,p是下面。

删除

  • x:删除光标所在的文字
  • nx:删除光标后面的n个字符
  • X:删除光标前面的一个字符
  • nX:删除光标前面的n个字符
  • dd:删除光标所在行
  • ndd:删除光标所在行向下数n行

撤销与重复

  • u   按u键可撤销上一步操作
  • .   按. 键将重复上一步操作

查找

  •    在命令模式下输入以下命令可查找指定的字符串
    /字符串:vi将从光标的当前位置开始向文件尾查找,如果找到,光标停留在该字符串的首字母上。

?字符串:vi将从光标的当前位置开始向文件头查找,如果找到,光标停留在该字符串的首字母上。
n 继续定位满足条件的字符串

搜寻与替换

  • 10,20s/old/new/ 将第10行至第20行资料的“old”改成“new”。
  • :%s/old/new/ 将编辑缓冲区中所有的“old”改成“new” 。
  • :1,%s/^/string1/ 在文件的第一行至最后一行的行首插入“string1”。
  • :%s/$/some string/ 在整个文件每一行的行尾添加“some string”。

:1,%s/word1/word2/c 从第一行到最后一行寻找word1 字串,并将该字串替换为 word2 。需要逐一确认c

 

内容来源于网络如有侵权请私信删除

文章来源: 博客园

原文链接: https://www.cnblogs.com/zhang-a-d/p/14889505.html

你还没有登录,请先登录注册
  • 还没有人评论,欢迎说说您的想法!

相关课程