vi编辑器是linux中通用的文本编辑工具,类似与windows的记事本,功能强大。
什么是vim??
vim是vi的升级版,用多种颜色的方式来显示一些特殊的信息vim会依据文件扩展名或者是文件内的开头信息, 判断该文件的内容而自动的执行该程序的语法判断式,再以颜色来显示程序代码与一般信息。
vim里面加入了很多额外的功能,例如支持正则表达式的搜索、多文件编辑、块复制等等。 这对于我们在Linux上进行一些配置文件的修改工作时是很棒的功能。

linux中有很多的编辑器,为什么要学vi?因为所有的Linux发行版都会使用vi所以学会之后可以在Linux的任意发行版上使用

vi三种模式

  1. 一般命令模式(命令模式)

    vi打开一个文件,就默认是一般命令模式,这个模式能进行,移动光标,可以删除字符或整行,也可以使用复制粘贴来处理文本,但是不能编辑文本

  • dd 删除光标所在一整行
  • ndd 删除从光标所在行向下的n行
  • yy 复制光标所在的那一行
  • u 恢复前一个操作
  1. 编辑模式

    进入此模式需要按下[i,I,a,A,r,R]任意一个按键,此模式下可以对文本进行编辑,esc键退出此模式

  2. 命令行模式(末行模式)

    此模式下你可以进行输入一些命令来操作文件,比如保存,退出,查找替换,设置行号等等,进入此模式的方法是按下:键,之后输入你的命令,注意编辑模式不能和命令行模式进行直接切换,需要先退出编辑模式

  • w 保存文件
  • wq 保存退出文件
  • q 退出文件
  • w 文件名 另存为
  • q! 强制退出
  • set nu 设置行号
  • set nonu 取消行号

    一些基本操作

    移动鼠标的方法

    在编辑模式下可以直接使用上下左右键来移动

在一般命令模式(命令模式)下可以使用一下命令来移动光标:

  • 0 移动到这一行的最前面字符处
  • $ 移动到这一行的最后一个字符
  • H
  • M
  • L
  • G 移动到这个文件的最后一行
  • nG n代表数字表示移动这个文件的第n行
  • gg 移动到这个文件的第一行
  • n加enter表示光标向下移动n行

    查找和替换

  • /word 向光标之下寻找一个名称为word的字符串,该命令代表查找word这个字符串

  • ?word 向光标之上寻找一个字符串
  • n 重复前一个操作
  • n1,n2s/word1/word2/g 从第一行到最后一行查找一个叫word1的字符串然后替换为word2 (常用)
  • n1,n2s/word1/word2/gc 从第一行到最后一行查找一个叫word1的字符串然后替换为word2,在替换前显示是否需要替换 (常用)
  • 把word2换成$就代表最后一行