Linux插入命令
a 在光标之后插入字符
A 把光标移动到行首尾进入插入模式
i 在光标之前插入字符
I 把光标移动到行首并进入插入模式
o 在光标下插入新行
O 在光标上插入新行
Linux定位命令
h左 j下 k上 L右
$ 移至行尾
0移至行首(数子0)
H 移至屏幕的上端
M 移至屏幕的中间
L 移至屏幕的下端
:set nu 设置行号
:set nonu 取消行号
gg 到最后一行
G 到最后一行
nG 到第n行
:n 到第n行
Linux删除命令
x 删除光标所在处的字符
nx 删除光标所在处后的n个字符
dd 删除光标所在行
ndd 删除光标所在行后的n行
dG 删除光标所在处到末尾所有的行
D 删除从光标所在处到行尾
:n1,n2d 删除指定范围的行
Linux复制和剪切命令
yy 、Y 复制当前行
nyy、nY 复制当前行以下n行
dd 剪切当前行
ndd 剪切当前行以后n行
p 粘贴到所在行下面
P 粘贴到所在行上面(大写)
LInux替换和取消命令
r 替换当前光标所在字符
R 从光标所在处开始替换字符,按Esc结束
u 取消上一步操作
LInux搜索和替换命令
/string 向前搜索指定字符串
:set ic 搜索时忽略大小写
n 搜索指定字符串下一个出现位置
:%s/old/new/g 全文替换
:n1,n2s/old/new/g 替换指定范围
:n1,n2s/old/new/c 替换指定范围,询问是否确认替换
Linux保存退出命令
:wq 保存退出 shift zz
:wq! 强行保存退出 只有文件所有者或者root才有此权限
:q! 不保存退出
:w 保存不退出
应用实例
:r 文件名 导入文件
:r !date 把当前日期导入到当前位置
!命令 在Vi中执行命令
:map 快捷键触发的命令 定义快捷键
范例::map ^p I#<ESC> 注释一行 (注意” ^ “这个符号是按Ctrl+v出来的,p也是按Ctrl+p出来的)
:map ^B 0x 去#注释( "^B" 这两个字符是按Ctrl+v Crtl+b出来的)
连续行注释 :n1,n2s/^/#/g 第n1行到第n2行加上注释 (^表示行首)
:n1,n2s/^#//g 把第n1到第n2行的行首#去掉
:n1,n2s/^/\/\//g 把n1到n2行行首加上// (\表示转义字符)