linux编程vi和ue哪个高效,入坑!VIM编辑器(最强整理版)

VIM的三种模式

513a7626205df5f1df49f3d7aca745ae.png

VIM 小抄图

1ba4d4a8f3ea513fcdacad39f843cea0.png

VIM具体操作

进入vi的命令vi filename :打开或新建文件,并将光标置于第一行首

vi +n filename :打开文件,并将光标置于第n行首

vi + filename :打开文件,并将光标置于最后一行首

vi +/pattern filename:打开文件,并将光标置于第一个与pattern匹配的串处

vi -r filename :在上次正用vi编辑时发生系统崩溃,恢复filename

vi filename....filename :打开多个文件,依次进行编辑

移动光标命令操作在命令模式下j 或下箭头 向下移动一行

k 或上箭头 向上移动一行

h 或左箭头 左移一个字符

l 或右箭头 右移一个字符

w 右移一个词

W 右移一个以空格分隔的词

b 左移一个词

B 左移一个以空格分隔的词

0 移到行首

Ctrl-F 向前翻页

Ctrl-B 向后翻页

nG 到第n行

G 到最后一行

插入文本命令操作在命令模式下i  在当前字符前插入文本

I  在行首插入文本

a  在当前字符后添加文本

A  在行末添加文本

o  在当前行后面插入一空行

O  在当前行前面插入一空行

R  以改写方式输入文本

替换文本$     到行尾

(     到句子的开头

)     到句子的末尾

{     到段落的开头

}     到段落的末尾

文本操作在命令模式下r   替换一个字符

c   修改文本直到按下Esc健

cw  修改下一个词

cnw  修改接下来的n个词

删除操作在命令模式下x 删除光标处的单个字符

dd 删除光标所在行

dw 删除当前字符到单词尾(包括空格)的所有字符

de 删除当前字符到单词尾(不包括单词尾部的空格)的所有字符

d$ 删除当前字符到行尾的所有字符

d^ 删除当前字符到行首的所有字符

J 删除光标所在行行尾的换行符,相当于合并当前行和下一行的内容

文本编辑yy 将一行文本移到缺省缓冲区中

yn 将下一个词移到缺省缓冲区中

ynw 将后面的n个词移到缺省缓冲区中

p  如果缺省缓冲区中包含一行文本,则在当前

行后面插入一个空行井将缺省缓冲区中的声

容粘贴到这一行中;如果缺省缓冲区中包含

多个词,把这些词粘贴到光标的右边.

P  如果缺省缓冲区中包含一行文本,则正当前

行前面插入一个空行井将缺省缓冲区中的内

容粘贴到这一行中;如果缺省缓冲区中包含

多个词,把这些词粘贴到光标的左边.

保存退出zz          保存并退出(在命令行模式下)

在末行模式下::w filename     写入文件:W          写入文件:x         保存(如果当前文件修改过)并退出

:q!         不保存文件,直接退出(强制退出):q         退出vi

编辑模式的编辑键操作方向键进行上下左右方向的光标移动

Home快速定位光标到行首

End快速定位光标到行尾

PageUp进行文本的向上翻页

PageDown进行文本的向下翻页

Backspace删除光标左侧的字符

Del删除光标位置的字符

替换操作在末行模式下:s/old/new 将当前行中查找到的第一个字符“old” 串替换为“new”:s/old/new/g 将当前行中查找到的所有字符串“old” 替换为“new”:#,#s/old/new/g 在行号“#,#”范围内替换所有的字符串“old”为“new”:%s/old/new/g 在整个文件范围内替换所有的字符串“old”为“new”:s/old/new/c 在替换命令末尾加入c命令,将对每个替换动作提示用户进行确认

撤消操作在命令模式下u 取消最近一次的操作,并恢复操作结果,可以多次使用u命令恢复已进行的多步操作

U 取消对当前行进行的所有操作

Ctrl + r 对使用u命令撤销的操作进行恢复

复制与粘贴操作在命令模式下yy 复制当前行整行的内容到vi缓冲区

yw 复制当前光标到单词尾字符的内容到vi缓冲区

y$ 复制当前光标到行尾的内容到vi缓冲区

y^ 复制当前光标到行首的内容到vi缓冲区

p 读取vi缓冲区中的内容,并粘贴到光标当前的位置(不覆盖文件已有的内容)

字符串查找操作在命令模式下/word 从上而下在文件中查找字符串“word”

?word 从下而上在文件中查找字符串“word”

n 定位下一个匹配的被查找字符串

N 定位上一个匹配的被查找字符串

快捷键ctrl-a : 把光标移动到命令行最开始的地方。

ctrl-e : 把光标移动到命令行末尾。

ctrl-u : 清除命令行中光标所处位置之前的所有字符。

ctrl-k : 清除从提示符所在位置到行末尾之间的字符

ctrl-w : 清除左边的字段

ctrl-y : 将会贴上被ctrl-u 或者 ctrl-k 或者 ctrl-w清除的部分。

ctrl-r : 将自动在命令历史缓存中增量搜索后面入的字符。

tab : 命令行自动补全-自动补全当前的命令行。如果启用自动补全脚本命令参数和选项也可以自动补齐。

ctrl-l : 清屏

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值