Linux :vim 模式下的常用命令
【参考文章】:vim 复制一整行 复制多行
1. 查找命令
?text 查找text,按n健查找下一个,按N健查找前一个
/text 反向查找text,按n健查找下一个,按N健查找前一个
:set number 显示行号
:set hlsearch 高亮搜索结果,所有结果都高亮显示,而不是只显示一个匹配。
:set nohlsearch 关闭高亮搜索显示
:number 条传到指定行数
:e 重新加载文件
:e! 丢弃本地修改,重新加载文件
ctrl + f : 下一页 forward
ctrl + b : 上一页 backword
2. 复制,粘贴,删除
命令模式下:
yy:复制光标所在行
nyy:复制光标所在行开始的下面 n行,n为 1,2,3...
p:在光标处粘贴文本
dd:剪贴光标所在行
ndd:剪贴光标所在行开始的下面 n 行,n为 1,2,3...
3. 字符串替换
:s/old/new/ 用old替换new,替换当前行的第一个匹配
:s/old/new/g 用old替换new,替换当前行的所有匹配
:%s/old/new/ 用old替换new,替换所有行的第一个匹配
:%s/old/new/g 用old替换new,替换整个文件的所有匹配
:10,20 s/^/ /g 在第10行知第20行每行前面加四个空格,用于缩进
4. 退出命令
:wq 保存并退出
:wq! 强制保存并退出
:q 退出
:q! 强制退出
:e! 放弃所有修改,并打开原来文件
5. 多行编辑
将光标移动到要修改部分的左上角;
control + V 进入visual block 模式;
通过方向键选择要多行编辑的内容;
5.1 指定文本前面插入文本
点击大写I进入编辑模式,输入要插入的内容,输入完成后按esc键,即可自动将输入内容添加到选择的行前面;
5.2 指定文本行尾插入文本
点击G$A,然后输入要插入的文本,输入完成后按esc键
5.3 删除指定文本
点击d键,即可删除光标选中的文本;
6. 其他操作
:1 / gg 跳转到第一行
:$ / shift + g 跳转到最后一行
7. 设置文件格式
:set fileformat=unix 将文件修改为unix格式
8. 以指定编码查看文件
vim file.txt -c "e ++enc=ASCII"
vim file.txt -c "e ++enc=gbk"
vim file.txt -c "e ++enc=utf8"
9. 编辑多个文件
vim file1 file2 file3 file4
命令模式下:
sp: 水平切分窗口
vsp: 垂直切分窗口
q: 退出当前窗口
ctrl + w:
j:切换到下方窗口
k: 切换到上方窗口
h: 切换到左边窗口
l: 切换到右边窗口