Linux文本编辑器
> Linux Vim三种工作模式(命令模式,输入模式,编辑模式)
vim命令模式
vim输入模式
vim编辑模式
> vim基本操作命令
打开文件
[root@localhost~ ]# vim /test/vi.test 打开文件,如果没有则创建
vim 文件 打开或者创建一个文件
vim -r 文件 恢复上次vim打开时崩溃的文件
vim -R 文件 把指定文件以只读方式放入vim中
vim + 文件 打开文件,将光标放置最后一行的首部
vim +n 文件 打开文件,将光标放置n行的首部
vim +/abc 文件 打开文件,将光标放置第一个abc匹配度的位置
> 使用vim进行编辑
插入文本
i 在当前光标所在位置插入输入文本
I 在光标所在行的行首插入输入文本
o 在光标所在行的下面插入新的一行
O 在光标所在行的上面插入新的一行
a 在当前光标所在位置之后插入随后输入的文本
A 在光标所在行的行尾插入输入文本
查找文本
/abc 从光标所在行位置向前查找abc字符串
/^abc 查找以abc为行首的行
/abc$ 查找以abc为行尾的行
?abc 从光标所在为主向后查找字符串abc
n 向同一方向重复上次的查找命令
N 向相反方向重复上次的查找指定
替换文本
r 替换光标所在位置的字符
R 从光标所在行开始替换字符,其输入内容覆盖后面等长的文本
:s/a1/a2/g 将当前光标所在行的所有a1用a2替换
:n1,n2s/a1/a2/g 将文件中n1到n2行中所有a1用a2替换
:g/a1/a2/g 将文件中所有的a1用a2替换
删除文本
x 删除光标所在位置的字符
dd 删除光标所在行
ndd 删除当前行后n行的文本
dG 删除光标所在行一直打文件呢末尾的所有内容
D 删除光标位置到行尾的内容
:a1,a2d 函数从a1行到a2行的文本内容
复制文本
p 将剪粘板的内容复制到光标后
P 将剪贴板的内容复制到光标前
yy 将光标所在行复制到剪贴板,可加数字,复制多行
ym 将光标位置的单词复制到剪贴板
保存退出文本
:wq 保存并退出编辑器
:wq! 保存强制退出
:q 不保存退出
:q! 不保存,强制退出
:w 保存不退出
:w! 强制保存
:w abc 另存为abc文件
x! 保存文本,退出
ZZ 直接退出
> vim移动光标快捷键
快捷方向能键
h 光标向左移动一位
j 光标向下移动一行
k 光标向上移动一行
l 光标向右移动一行
光标移动至行首或行尾
O或^ 光标移动至当前行首
$ 光标移动至当前行尾
n$ 光标移动至当前行只有n行的行尾,n为数字
光标移动至指定行
gg 光标移动到文件开头
G 光标移动至文件末尾
nG 光标移动至第n行
:n 编辑模式下的快捷键,将光标定义到指定行首
> 多窗口编辑
首先打开一个文件
:sp/etc/shadow 水平切分窗口
:vs/etc/shadow 垂直切分窗口
> 批量注释和自定义注释
:1,10s/^/#/g 1~10行行首添加#
:1,10s/^#//g 1~10行取消注释