1. 编辑器详细使用方式
1.1 三种模式
1.1.1 命令模式
i # 从光标所在位置进入编辑模式
I # 将光标移动到所在行的行首进入编辑模式
o # 在光标所在行的下面新起一行进入编辑模式
O # 在光标所在行的上面新起一行进入编辑模式
a # 在光标移动到右边的下一个字符,进入编辑模式
A # 在光标所在行的行尾进入编辑模式
C # 将光标到行尾内容进行删除,并进入编辑模式
cc # 将整行内容进行删除,并进入编辑状态
: # 输入一些命令
/ # 进入搜索状态,向下搜索,n依次向下
? # 进入搜索状态,向上搜索,n依次向上
gg # 将光标移动的文件的首行
G # 将光标移动到文件的尾行
ngg # 光标移动到第n行行首
$ # 将光标移动到光标所在行的行尾
^/0 # 将光标移动到光标所在行的行首
dd # 删除光标所在行内容(剪切)
ndd # 删除光标所在行在内的n行内容(向下匹配)(剪切)
dG # 删除光标所在行至文件尾行的所有内容
u # undo 撤回
ctrl+r # redo
p # 粘贴
np # 粘贴n次
yy # 复制
nyy # 复制n行(包含光标所在行在内的n行,向下匹配)
1.1.2 插入模式
Esc 按键
1.1.3 底行模式
Esc 按键
:set number # 显示文件 行号
:set nonumber # 取消文件 行号
/字符串 # 在本文件中搜索 字符串 对应 内容 ; n 向下翻页
/字符串 # 在本文件中搜索 字符串 对应 内容 ; n 向下翻页
# 方法一
:set ic # 然后搜索,可忽略大小写,取消方法 :set noic
# 方法二
:set ignorecase # 取消方法 :set noignorecase
# 方法三
/字符串\c
:2,4move9 # 将文件 2-4 行内容 移动到 第9行之后
:2,4copy9 # 将文件 2-4 行内容 复制到 第9行之后
# 替换全文件内容
:%s#yunxuan#admin#g # 将文件中全部的 yunxuan 替换成 admin
% # 表示全部
s # 替换 substitution
g # 全局 global (将整行符合要求的字符全部做替换)
#str1#str2# # 将 str1 替换为 str2
# 替换部分内容
:2,4s#yunxuan#admin#g # 将文件中2-4行中的 yunxuan 替换为 admin
:2,$s#yunxuan#admin#g # 将文件第2行之后 文件内容中全部的 yunxuan 替换为 admin
2. 批量修改文件内容
2.1 批量注释
ctrl+v # 进入视图模式
方向键可以选择
shift+i --> 输入 # 号
按 ESC
2.2 批量删除
ctrl+v # 进入视图模式
方向键可以选择
d/x # 字母 d 或者 字母 x 可批量删除
3. vim 使用中常见错误说明
3.1 vim 命令后一定要跟编辑文件
vim /etc/hosts
vim
# 直接使用 vim 命令,后面未跟任何文件,如下图所示
3.2 vim 只能编辑 存在的目录 中的文件
[root@yunxuanedu file]$ pwd
/server/file
[root@yunxuanedu file]$ ls
[root@yunxuanedu file]$ vim test/01.txt
3.3 vim 编辑文件过程中非正常退出
# 提示信息说明
[O]pen Read-Only # 打开 只读(看看)
(E)dit anyway # 继续编辑
(R)ecover # 恢复
(D)elete it # 删除临时文件
(Q)uit # 退出操作
(A)bort # 中止编辑
- 利用 vim 编辑一个文件
- 需要判断编辑的文件所在目录中是否有隐藏文件
- 在命令模式就会产生临时文件
- 进入编辑模式对文件进行编辑
- 编辑完成之后需要确定是否正常保存退出
- 正常退出:编辑状态 -- 命令模式 -- 保存退出 -- 降临隐藏文件重命名
- 非正常退出:临时文件会永久保留(.文件名.swp)
- 查看文件内容,按 O
- 确认文件是否需要恢复
- 需要恢复:退出重新编辑,按 R 恢复文件内容
- 不用恢复:退出重新编辑,按 E 进行编辑
- 将临时文件删除
- 编辑文件,按 D 删除临时文件
- 利用 rm 命令删除临时文件