Linux系统中vim编辑命令的常见用法举例
使用Linux,少不了和编辑器打交道。Linux系统中有多个编辑器,一般比如nano,gedit,vi,vim等。nano使用简单,很容易上手,不过功能比较单一。vi命令功能强大,不过上手可能不是很容易。vim是vi命令的加强版,一般使用vim命令。下面简单说下vim的常见用法。
vim是一个全屏编辑器,模式化编辑器。模式主要有编辑模式,输入模式,末行模式。默认打开vim命令进入的是编辑模式。
打开文件
打开文件:vim /path/to/somefile
其他用法:
vim +#:打开文件,并定位到#行
vim +:打开文件,并定位到最后一行
vim +/pattern:打开文件,并定位到第一次被pattern匹配到的行的行首
关闭文件
1、末行模式关闭文件
:q 不保存退出
:wq 保存并退出
:q! 不保存强制退出
:w 保存
:w!强制保存
:wq --> :x
2、编辑模式退出
ZZ 保存并退出
模式转化
1、编辑-->输入
i:在当前光标所在字符的前面转为输入模式;
I:在当前光标所在字符的行首转为输入模式;
a:在当前光标所在字符的后面转为输入模式;
A:在当前光标所在字符的行尾转为输入模式;
o:在当前光标所在行的下面新建一行,转为输入模式;
O:在当前光标所在行的上面新建一行,转为输入模式;
2、输入-->编辑
esc键
3、编辑-->末行
:
4、末行-->编辑
esc键
移动光标(编辑模式)
1、逐字移动光标
h:左
l:右
j:下
k:上
#h:移动#个字符
2、逐个单词移动
w:移到下一个单词的词首
e:移到当前或者下个单词的词尾
b:移到当前或者前一个单词的词首
#w:支持
3、行内跳转
0:跳到行首,绝对行首
^:跳到行首,行首的第一个非空白字符
$:跳到行尾,绝对行尾
4、行间跳转
#G:跳转至第#行
G:最后一行
末行模式下,直接给出行号回车即可
翻屏
ctrl+f:向下翻一屏
ctrl+b:向上翻一屏
ctrl+d:向下翻半屏
ctrl+u:向上翻半屏
删除单个字符
x:删除光标所在处的单个字符
#x:删除光标所在处及向后的共#个字符
删除命令 d
d命令和跳转命令组合使用
d$:删除当前光标所在行光标位置到行尾的所有字符。
d0:删除当前光标所在行光标位置到行首的所有字符。
dw
de
db
dd:删除当前光标所在行
#d跳转符:
末行模式
. 表示当前行
$ 表示最后一行
+# 向下的#行
例如:
1,2d
.,$d
.,$-3d
粘贴命令 p
p:如果删除或复制为整行内容,则粘贴至光标所在行的下方,如果复制或删除的内容为非整行,则粘贴至光标所在字符的后面。
P:如果删除或复制为整行内容,则粘贴至光标所在行的上方,如果复制或删除的内容为非整行,则粘贴至光标所在字符的前面。
复制命令 y
用法同d命令
修改命令 c
用法同d命令
替换 r
r@:替换光标所在位置的字符为@字符
撤销 u
u,连续u命令可以撤销此前的n次操作,一般最多只保存有50次。
撤销最近一次的撤销操作:ctrl+r
可视化模式
v:按字符选取
V:按矩形选取
选取后可以使用各种编辑命令,如d命令删除。
查找
/pattern:从当前光标所在位置开始向下查找。
?pattern:从当前光标所在位置开始向上查找。
n:后一条结果
N:前一条结果
查找替换
在末行模式下使用s命令,用法和sed一样
例如:
:.,$-1s/he/HE/g 替换当前行到倒数第二行中所有he为HE 。
上面是常用的vim编辑器的使用方法,主要介绍了编辑模式下的命令。输入模式下和nano功能差不多。
-
还没有Trackbacks
学习了
前来学习了。