vim编辑器的高级用法配置
1、vim的三种模式
vim是全球两大流行文本编辑器之一,其工作模式分为以下三种:
1)命令模式(浏览模式):此模式下只能对文件内容进行浏览
2)插入模式:对文件内容进行修改的模式
3)退出模式:结束vim程序使用到的指令
vim file
:用vim编辑器打开文件
vimtutor
:vim帮助手册(或使用vim 命令打开vim程序在程序输入:help
)
2、vim工作的基本配置
在命令模式下更改vim的工作方式有以下两种途径:
1)临时设定
:set 设定
:set nu #显示行号
:set nonu #取消行号显示
:set mouse=a #鼠标可用
:set cursorline #显示光标所在行的行线
2)永久设定
vim /etc/vimrc ##编辑vim配置文件 for all user
vim ~/.vimrc ##用户级vim的配置文件,只针对指定用户生效
3、搜索
/关键字 ##高亮显示关键字
:noh ##取消高亮显示
n ##向下匹配关键字
N ##向上匹配关键字
4、vim中的字符管理(命令模式下)
1)复制
y ##复制快捷键
yl ##复制一个字母
ynl ##复制n个字母
yw ##复制一个单词
ynw ##复制n个单词
yy ##复制一行
yny ##复制n行
2)删除
d ##删除的快捷键
dl ##删除一个字母
dnl ##删除n个字母
dw ##删除一个单词
dnw ##删除n个单词
dd ##删除一行
dnd ##删除n行
3)剪切
c ##剪切
cl ##剪切1个字母
cnl ##剪切n个字母
cw ##剪切1个单词
cnw ##剪切n个单词
cc ##剪切1整行
cnc ##剪切n整行
注意:剪切操作完毕后会进入到"插入模式" ,如果要粘贴需要按ESC退出插入模式后再按 p。
4)粘贴
p ##在命令模式下p表示粘贴
5)恢复
u ##恢复
6)撤销
<ctrl>+<R> ##撤销
5、vim可视化模式
<ctrl>+<v> ##进入可视化模式
<ESC> ##退出可视化模式
6、批量添加字符(可视化模式下)
<ctrl>+<v>
选中插入字符所在列—>按大写 I 进入插入模式—>插入要写入的字符—>ESC退出插入模式,批量添加完成
7、批量修改字符
:%s/原字符/替换字符/g ##%全文的行,g全文的列
/lp/,/halt/s/:/**/g ##将lp字符到halt字符之间
##行中的所有:替换为**
8、vim的分屏功能
1)同步分屏
<ctrl> + <w> <s> ##上下分屏<ctrl> + <w> <v> ##左右分屏
<ctrl> + <w> <上|下|左|右> ##光标移动
<ctrl> + <w> <c> ##取消分屏
2)不同步分屏
:sp 文件名称
vim -o file1 file2 #光标上下----<ctrl> + <w> <上|下>
vim -p file1 file2 #l|r :tabn ---next tabp: ----prev
8.vim中快速定位光标
gg
:光标移动到文件第一行行首
G
:光标移动到最后一行
:数字
:光标移动到指定行
9、vim插入模式进入方式
i #光标所在位置插入
I #光标所在行行首插入
A #光标所在行的行尾插入
a #光标所在字符的下一个字符插入
o #光标所在行的下一行插入
O #光标所在行的上一行插入
s #删除光标所在字符插入
S #删除光标所在行插入
10、vim退出模式
:wq ##保存退出
:wq! ##强制保存退出只有文件是自己的或者root用户可用
:q ##退出
:q! ##强制退出不保存
命令练习test
查找一个字符串
• 在文件/usr/share/xml/iso-codes/iso_639_3.xml 中查找到所有包含字符 ng 的行
• 将找出的行按照先后顺序复制到/root/list 文件中
• /root/list 文件中无意义的空格请去除掉
• 其中的所有行的内容必须时源文件中原始的标准副本
11、命令行获得帮助
1)whatis 命令
示例:
whatis rm
:查看 rm 命令的基本用途
若查看过程中出现rm: nothing appropriate则说明:
a)要查看内容没有帮助
b)系统帮助数据未更新:使用mandb命令更新
注意:当执行whatis命令出现 nothing appropriate 时大多数情况是因为系统的帮助数据库未更新,解决此问题需要在root用户下执行mandb
2)命令 - -help
示例:
rm --help
:查看命令的基本用法
用法说明中,各符号含义如下:
[ ]
:该位置参数内容可加可不加
...
:该位置参数内容个数任意
< >
:必须在命令执行时加入的参数
3)man 命令
示例:
man rm
:rm 命令用法详解(man是manual的缩写)
man -k passwd
:passwd关键字有多少级别的man
##man的级别
#1 命令
#2 系统调用
#3 函数库调用
#4 特殊文件(设备文件等)
#5 文件
#6 游戏
#7 特殊的包
#8 系统管理命令
#9 内核信息规则
q
:退出
/关键字
:搜索关键字,n 向下匹配, N 向上匹配
G
:快速移动到man的最后
g
:快速移动到man的最前