Linux文本编辑器Vim/Vi (最常用的,最实用的命令)

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行行首加上// (表示转义字符)

替换      :ab mymail zzs_cn@163.com  写一个mymail自动变成zzs_cn@163.com