Linux文件编辑工具vi/vim

vi/vim 的使用

vi或vim是Linux最常用的文本编辑器工具,vi或vim没有图形界面编辑器那样单机鼠标的简单操作,但vi编辑器在系统管理、服务器管理中,永远是图形界面的编辑器所不能比的。

基本上 vi/vim 共分为三种模式 :

  1. 命令模式(Command mode)
  2. 输入模式(Insert mode)
  3. 底线命令模式(Last line mode) 

命令模式

用户刚刚启动 vi/vim,便进入了命令模式。

此状态下敲击键盘动作会被Vim识别为命令,而非输入字符。比如我们此时按下i,并不会输入一个字符,i被当作了一个命令。

命令 作用
dd 删除(剪切)光标所在的整行
5dd 删除(剪切)从光标处开始的5行
yy 复制光标所在整行
5yy 复制从光标处开始的5行
n 显示搜索命令定位到下一个字符串
N 显示搜索命令定位到的上一个字符串
u 撤销上一步操作
p 将之前删除dd或者复制yy过的数据粘贴到光标后面
G 文本最后面
gg 文本开始
shift+^ 移动到行头
shift+$ 移动到行尾
x 删除字符

输入模式

在命令模式下按下i、o、a就进入了输入模式。

在输入模式中,可以使用以下按键:

  • 字符按键以及Shift组合,输入字符
  • ENTER,回车键,换行
  • BACK SPACE,退格键,删除光标前一个字符
  • DEL,删除键,删除光标后一个字符
  • 方向键,在文本中移动光标
  • HOME/END,移动光标到行首/行尾
  • Page Up/Page Down,上/下翻页
  • Insert,切换光标为输入/替换模式,光标将变成竖线/下划线
  • ESC,退出输入模式,切换到命令模式

底线命令模式

主要保存或者退出文件,以及设置Vim编辑器的工作环境,还可以让用户执行外部的Linux命令或跳转所编写文档的特定行数。

命令 作用
: w 保存
: q 退出
: q ! 强制退出
: wq! 强制保存退出
: set nu 显示行号
: set nonu 不显示行号
: 命令 执行该命令
: 整数 跳转到该行
:s/one/two 将当前光标所在行的第一个one替换成two
:s/one/two/g 将当前光标所在行的所有one替换成two
:%s/one/two/g 将全文中的所有one替换成two
?字符串 在文本中从下至上搜索该字符串
/字符串 在文本中从上至下搜索该字符串

shift+zz 保存退出

vi/vim 使用实例

编辑模式

在一般模式中可以进行删除、复制、贴上等等的动作,但是却无法编辑文件内容的!

要等到你按下『i, I, o, O, a, A, r, R』等任何一个字母之后才会进入编辑模式。

常用语法

1)进入编辑模式

(1)i 当前光标前

(2)a 当前光标后

(3)o 当前光标行的下一行

2)退出编辑模式

按『Esc』键

指令模式

在这个模式当中, 可以提供你『搜寻资料』的动作,而读取、存盘、大量取代字符、离开 vi 、显示行号等动作是在此模式中达成的!

常用语法

  1. 基本语法
  • : 选项

w 保存

q 退出

! 感叹号强制执行

  • / 查找,/被查找词,n是查找下一个,shift+n是往上查找
  • ? 查找,?被查找词,n是查找上一个,shift+n是往下查找

示例:

1:w 保存

2:q 退出

3:q! 强制退出(放弃对文档的修改内容)

4:wq! 强制保存退出

5:set nu 显示行号

6:set nonu 不显示行号

7:命令 执行该命令

8:整数 跳转到该行

命令操作

命令 作用
:s/one/two 将当前光标所在行的第一个 one 替换成 two
:s/one/two/g 将当前光标所在行的所有 one 替换成 two
:%s/one/two/g 将全文中的所有 one 替换成 two
?字符串 在文本中从下至上搜索该字符串
/字符串 在文本中从上至下搜索该字符串

你可能感兴趣的:(linux,vim,运维)