4.vim的高级用法配置
前言
本章主要介绍vim的高级用法,包括字符管理、搜索、可视化、批量修改字符、分屏、快速定位光标、插入模式进入方式、退出模式等,有助于提高vim编辑效率。
一、vim的三大模式
命令模式:此模式下只能对文件内容浏览,不嫩修改文件内容。
插入模式:客队文件内容进行修改的模式
退出模式:结束vim编辑的模式
vimtutor:vim手册
vim 命令打开vim程序在程序输入:help
二、vim工作的基本配置
注:在命令模式下如何更改vim的工作方式
临时设定:
:set nu #显示行号
:set nonu #取消行号显示
:set ai #缩进
:set cursorline #行线
永久设定
系统级:对于所有用户都生效 for all user
vim /etc/vimrc ,编辑加入需要的设定
再次打开任意文件,即可显示行号与行线。
用户级:
vim ~/.vimrc 家目录中的vimrc文件 文件名称固定 此文件只针对当前用户生效,操作与系统级一致。
三、搜索
/关键字 #在vim中搜索关键字
:noh 取消高亮
其中,n 向下匹配,N 向上匹配。
四、vim中的字符管理
命令模式下:
-
复制
y: 复制字符快捷键 p粘贴 u恢复 ctrl+r 撤销
yw: 复制一个单词 光标停留在单词的首字母
y2w: 复制两个单词
yy: 复制一整行
y3y: 复制三行 -
删除
d: 删除字符快捷键
dl/x: 删除一个字母
d3l: 删除三个字母
dw: 删除一个单词
d2w: 删除两个单词
dd: 删除一整行
d3d: 删除三行 -
剪切 使用剪切时,会进入插入模式,要对剪掉的内容进行粘贴,需要退出插入模式
c: 剪切字符快捷键
cl: 剪切一个字母
cw: 剪切一个单词
c3w: 剪切三个单词
cc: 剪切一整行
c3c: 剪切三行 -
粘贴:p
-
恢复:u
-
撤销:Ctrl+R
五、vim可视化
ctrl + v 进入可视化模式。
六、批量修改字符
1.批量添加字符
进入可视化模式,批量选中字符
按I进入插入模式,插入要修改的字符,esc退出即可批量修改字符。
2.批量修改字符
s 一行 g 一列
:%s/原字符/替换字符/g #文中的原字符修改为替换字符
1,5s/😕##/g #1-5行的:修改为##
/lp/,/halt/s/😕##/g #lp字符与halt字符行之间的:修改为#
将westos文件中所有的h修改为H,
命令模式下输入:%s/h/H/g
七、vim的分屏功能
同步分屏
Cctrl+w+s #上下分屏
Ctrl+w+v #左右分屏
ctrl+w +上下左右 #移动光标
ctrl+w+c #取消分屏
不同步分屏
:sp 文件名称
八、vim中快速定位光标
gg #光标移动到文件第一行行首
G #光标移动到最后一行
:数字 #光标移动到指定行
九、vim插入模式进入方式
i #光标所在位置插入
I #所在行行首插入
A #所在行行尾插入
a #所在字符的下一个字符插入
o #所在行的下一行插入
O #所在行的上一行插入
s #删除光标所在字符插入
S #删除光标所在行字符插入
十、vim退出模式
:wq! 当编辑只读文件时,若你是文件拥有者/超级用户,可强行保存只读文件。
十一、命令行获得帮助
whatis rm 查看命令的基本用途
若出现:rm: nothing approriate
1.表示要查看内容没有帮助。
2.系统帮助数据未更新用mandb命令更新。
更新完成后重新查找帮助,whatis rm
rm --help 查看命令的基本用法。其中[]内容可加可不加 …内容个数任意 <>必加元素
man rm (manual) 命令用法详解
man -k passwd passwd关键字有多少级别的man
其中,#1 命令
#2 系统调用
#3 函数库调用
#4 特殊文件(设备文件等)
#5 文件
#6 游戏
#7 特殊的包
#8 系统管理命令
#9 内核信息规则
man 5 passwd
相同文件名可能有不同的存在格式,man 5 passwd,man的级别5表示文件,即此命令的意思就是查看passwd以文件形式存在的手册。
test
查找一个字符串
• 在文件/usr/share/xml/iso-codes/iso_639_3.xml 中查找到所有包含字符 ng 的行
grep np westos #在westos中找到含有np的行,
同理,grep ng /usr/share/xml/iso-codes/iso_639_3.xml
• 将找出的行按照先后顺序复制到/root/list 文件中
• /root/list 文件中无意义的空格请去除掉
如图所示,文件中无意义的空格包括第二行的空格以及后面所有行的tab。
先将所有tab替换掉,tab键的表示方式为:ctrl+v + ctrl +i
可以看到,除了第二行的空格,其余行都已去掉无用空格,再将第二行以空格开头的去掉,
以空格开头:^+空格 * 表示以空格开头,%s/^ *//g
• 其中的所有行的内容必须时源文件中原始的标准副本
总结
本章主要学习了vim的高级用法配置,要充分了解熟悉vim中字符管理、搜索、可视化、批量修改字符、分屏、快速定位光标、插入模式进入方式、退出模式等,有助于提高vim编辑效率。