4.vim的高级用法配置
无图形界面分为 0-6 个运行等级,0 代表关机,6 表示重启,1 代表单用户模式,只有一个 root 用户,相当于 Windows 的安全模式;2-4 表示无图形网络模式,5 代表有图形的网络模式。 命令 init 0-6 例如:图形界面鼠标键盘出问题可以关闭图形界面,在打开图形界面
init 0:关机
init 6:重启
init 3:无图形界面
init 5:有图形界面
一.vim 的三种模式
vim 是全球两大流行文本编辑器之一
vim file 直接编辑文本内容
vim 不加文件名 可以在退出保存时加文件名 :wq file
vim 模式:
命令模式(浏览模式):
此模式下只能对文件内容浏览,对 vim 工作方式进行设定,不能修改文件
插入模式:
对文件进行修改的模式
退出模式:
结束 vim 程序使用到的指令 vimtutor
vim 手册,vim 命令打开
vim 程序,在程序输入:help
二.vim 工作的基本配置
在命令模式如何修改 vim 的工作方式
方法:临时设定 (vim任意一个文件时设定)
: set 设定
: set nu 显示行号
: set nonu 取消行号显示
: set mouse=a 鼠标可用
: set cursorline 显示光标所在行的行线
设定的参数可以网上搜索vim设定值查看
vim 一个汉字是三个字节,一行一个汉字是 4 个字节(容量大小),默认有一个换行符
方法: 永久设定
vim /root/.vimrc 针对 root 用户的
vim ~/.vimrc 针对当前用户
vim /etc/vimrc vim 配置文件(全局,所有用户都适用)
三.搜索
/关键字 高亮显示关键字
:noh 取消高亮显示
n 向下匹配关键字
N 向上匹配关键字
四.vim 中的字符管理
- 复制
y 复制关键字
y l 复制一个字母
y3l 复制三个字母
yw 复制一个单词
y3w 复制三个单词
yy 复制一行
y3y 复制三行 - 删除
d 删除的快捷键
dl 或 x 删除一个单词
d 3l 删除三个单词
dw 删除一个单词
d 3w 删除三个单词
dd 删除一行
d3d 删除三行
u 恢复
ctrl +r 撤销
默认从下往上删除
d3+ 上键 删除上三行
复制也一样 - 剪切
c 剪切
cl 剪切一个字母
c3l 剪切三个字母
cw 剪切 一个单词
c3w 剪切三个单词
cc 剪切一行
c3c 剪切三行
注意:剪切操作完毕后会进入插入模式,如果粘贴需要按 ESC 退出插入模式在按 p - 粘贴 p 命令模式下 p 表示粘贴
- 恢复 u
- 撤销 ctrl +r
五.批量添加字符
1>ctrl+v 选中插入字符所在列,可视化
2>按大写 I 进入插入模式
3>插入要写入的字符
4>ESC 退出插入模式
5>批量添加完成
六.批量修改字符
%s/ 原有字符 / 替换 字符 / g
: %s/😕 /g %s 代表全文的行, g 表示全文的列
将冒号替换成空格
: 1 , 5s /😕 /g 1 , 5 表示 1 - 5 行 进行替换
:/lp/,/ab/ s/😕 /g lp 和 ab 关键字之间的所有行进行替换
七.vim 的分屏操作
同步分屏:
Ctrl + < w > < s > 上下分屏
Ctrl + < w > < v > 左右分屏
Ctrl +< w > < 上 | 下 | 左 | 右 > 光标移动
Ctrl +< w > < c > 取消分屏
不同步分屏:
:sp 文件名称
vim -o file1 file2 上下分屏
vim -p fiel1 file2 左右分屏 vim file1 之后可以 : sp file2 打开第二个文件
八.vim 中快速定位光标
gg 光标移动到文件第一行行首
G 光标移动到最后一 行
:数字 光标移动到指定行
九.vim 插入模式进入方式
i 光标所在位置插入
I 光标所在行行首插入
A 光标所在行的行尾插入
a 光标所在字符的下一个字符插入
o 光标所在行的下一行插入
O 光标所在行的上一行插入
s 删除光标所在字符插入
S 删除光标所在行插入
十.vim 退出模式
: wq 保存退出
: wq ! 强制保存退出 ,只有文件是自己的或者是root用户可用
: q 退出不保存、
: q ! 强制退出不保存
十一.练习题
查找一个字符串
- 在文件/usr/share/xml/iso-codes/iso_639_3.xml 中查找到所有包含 字符 ng 的行
- 将找出的行按照先后顺序复制到/root/list 文件中 grep np /usr/share/xml/iso - codes/iso_639_3.xml > /root/list
- /root/list 文件中无意义的空格请去除掉 : % s / ^ I / / g ##^ I( 直接按 tab 键就可以出来 ^ + 大写 I ) 或者 : %s /^ \ * / / g \ 为了转义空格
- 其中的所有行的内容必须是源文件中原始的标准副本