linux基础命令之:vi模式下查找和替换

转自:http://blog.csdn.net/bananasssss/article/details/52574115

参考:http://blog.csdn.net/erhei0317/article/details/52631942


一字符的替换及撤销Undo操作

二快速缩进及调整文本位置

三字符查找

四查找与批量替换

一、字符的替换及撤销(Undo操作)
-ChangeDeleteYank(copy)
Line(一行)ccddyy
Letter(字母)cldlyl
Word(单词)cwdwyw

命令功能
r+<待替换字母>将游标所在字母替换为指定字母
R随光标移动,连续替换,直到按下Esc
cc替换整行,即删除游标所在行,并进入插入模式
cw替换一个单词,即删除一个单词,并进入插入模式
C(大写)替换游标以后至行末
~反转游标所在字母大小写
u{n}撤销一次或n次操作
U(大写)撤销当前行的所有修改
Ctrl+rredo,即撤销undo的操作
二、快速缩进及调整文本位置
命令功能
>>普通模式下,整行将向右缩进
<<普通模式下,整行向左回退
:ce(center)命令行模式下,使本行内容居中
:ri(right)命令行模式下,使本行文本靠右
:le(left)命令行模式下,使本行内容靠左

普通模式下输入:进入命令行模式下对shiftwidth值进行设置可以控制缩进和回退的字符数 
:set shiftwidth?或者:set sw?

三、字符查找
命令功能
/text往后搜索text
?text往前搜索text
n搜索上一次同样的内容
N往前(相对)搜索相同的内容
\*寻找游标所在处的单词
\#同上,但 \* 是向前(上)找,#则是向后(下)找
g\*\* ,但部分符合该单词即可
g\#\# ,但部分符合该单词即可
四、查找与批量替换
命令功能
:s/表示通过sed命令进行查找替换
:s/i/-将本行的第一个i替换为-
:s/i/-/g最后的一个g表示替换该行的所有i
:1,10s/i/-/g替换1-10行所有的i为-
:1,$s/i/-/g末尾行用$表示到文件末尾

五:other

在使用vi有时会想直接复制一行数据,然后粘贴一行或者直接删除一行数据

复制一行数据的方法

把光标放到要复制的一行前面,然后按两下yy字母键

然后把光标放到要复制到的地方去,按键盘的p字母键

删除一行是把光标移动到要删除的一行上,按两下dd键

下面是相关键的说明:

x,X  : 在一行中,x为向后删除一个字符(相当于del键),X为向前删除一个字符(相当于backspace键)。
dd   : 删除光标所在的那一整行。
ndd  : n 为数字。从光标开始,删除向下n列。
yy   : 复制光标所在的那一行。   
nyy  : n为数字。复制光标所在的向下n行。
p,P  : p 为将已复制的数据粘贴到光标的下一行,P则为贴在光标的上一行。
u    : 复原前一个操作
CTRL + r : 重做上一个操作。
小数点'.': 重复前一个动作。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值