vi/vim是文本文件的查看和编辑软件
进入文件以后会出现一个新的交互界面,这时可使用vi/vim命令特定的命令对文本文件进行编辑
1. 查看文本文件
vi ~/.bashrc #用来查看家目录下的bashrc这个文本文件
2. 对文本编辑模式的切换
- 用vi/vim命令打开一个文本文件时,即进入了命令模式,此状态下的输入会被vi/vim识别成命令而非字符
- 按 : 进入对文本文件的底线命令模式,可使用vi/vim的特定命令对文本进行编辑
- 按 i 进入文本文件的输入模式,可以对文本文件进行字符编辑,此状态下的输入会被vi/vim识别成字符
3. 命令模式下的一些操作
- /字符串 :匹配字符串
- n : 将光标转到下一个匹配的字符串
4. 输入模式下对文本的编辑
- ENTER:换行
- HOME:移动光标到行首
- END:移动光标到行尾
- ESC:退出输入模式并切换到命令模式
5. 底行命令模式下对文本的编辑
w:保存对文件的修改
q:退出程序
wq:保存并退出
按ESC键:退出底线命令模式
一些示例
:s/a/b/ #替换当前行第一个a为b
:s/a/b/g #替换当前行所有a为b
:%s/a/b/ #替换所有行第一个a为b
:%s/a/b/g #替换所有行所有a为b
:行号 #将光标移动到此行首
:0 #将光标移动到首行首
6. 快捷键
Shift+g :将光标移动到末行首
缓冲文件
- 用来缓存对文件的修改,是一个临时文件,正常情况下,是一个隐藏文件
- 当vi正常退出时,缓冲文件会被删除
- 当出现断电或者Ctrl+z/c等情况时,缓冲文件不会被删除,用来后续对文件的修改进行恢复
- .swp型缓冲文件,是交换分区(swap)的缩写
7. 将光标移动到某行
7.1 将光标移动到首行行首
- 在底行命令模式下输入 0 或 1
- 在命令模式下连按两次 g
7.2 将光标移动到尾行行首
- 在底行命令模式下输入 $
- 在命令模式下按下 shift + g
7.3 将光标移动到任意一行的行首
在底行命令模式下输入此行的行号