vi怎么查找替换?

作者&投稿:绽鬼 (若有异议请与网页底部的电邮联系)
~

vi查找替换命令详解

一、查找查找命令/patternEnter :向下查找pattern匹配字符串?patternEnter:向上查找pattern匹配字符串使用了查找命令之后,使用如下两个键快速查找:n:按照同一方向继续查找N:按照反方向查找字符串匹配pattern是需要匹配的字符串,例如:

1: /abcEnter   #查找abc2: / abc Enter  #查找abc单词(注意前后的空格)

除此之外,pattern还可以使用一些特殊字符,包括(/、^、$、*、.),其中前三个这两个是vi与vim通用的,“/”为转义字符。

1: /^abcEnter  #查找以abc开始的行 2: /test$Enter  #查找以abc结束的行 3: //^testEnter  #查找^tabc字符串

二、替换基本替换

1: :s/vivian/sky/     #替换当前行第一个 vivian 为 sky2: :s/vivian/sky/g   #替换当前行所有 vivian 为 sky3: :n,$s/vivian/sky/   #替换第 n 行开始到最后一行中每一行的第一个 vivian 为 sky4: :n,$s/vivian/sky/g   #替换第 n 行开始到最后一行中每一行所有 vivian 为 sky5: (n 为数字,若 n 为 .,表示从当前行开始到最后一行)6: 7: :%s/vivian/sky/    #(等同于 :g/vivian/s//sky/) 替换每一行的第一个 vivian 为 sky8: :%s/vivian/sky/g  #(等同于 :g/vivian/s//sky/g) 替换每一行中所有 vivian 为 sky

可以使用 #或+ 作为分隔符,此时中间出现的 / 不会作为分隔符

1: :s#vivian/#sky/#     替换当前行第一个 vivian/ 为 sky/2: :%s+/oradata/apras/+/user01/apras1+ (3: 使用+ 来 替换 / ): /oradata/apras/替换成/user01/apras1/

删除文本中的^M问题描述:对于换行,window下用回车换行(0A0D)来表示,linux下是回车(0A)来表示。这样,将window上的文件拷到unix上用时,总会有个^M,请写个用在unix下的过滤windows文件的换行符(0D)的shell或c程序。使用命令:cat filename1 | tr -d “^V^M” newfile;使用命令:sed -e “s/^V^M//” filename outputfilename需要注意的是在1、2两种方法中,^V和^M指的是Ctrl+V和Ctrl+M。你必须要手工进行输入,而不是粘贴。在vi中处理:首先使用vi打开文件,然后按ESC键,接着输入命令:

1: :%s/^V^M//2: :%s/^M$//g

如果上述方法无用,则正确的解决办法是:

1: tr -d “/r” src dest2: tr -d “/015″ dest3: 4: strings AB

其它用法

1: :s/str1/str2/     #用字符串 str2 替换行中首次出现的字符串 str12: :s/str1/str2/g     #用字符串 str2 替换行中所有出现的字符串 str13: :.,$ s/str1/str2/g   #用字符串 str2 替换正文当前行到末尾所有出现的字符串 str14: :1,$ s/str1/str2/g   #用字符串 str2 替换正文中所有出现的字符串 str15: :g/str1/s//str2/g   #功能同上

从上述替换命令可以看到:g 放在命令末尾,表示对指定行的搜索字符串的每次出现进行替换;不加 g,表示只对指定行的搜索字符串的首次出现进行替换;g 放在命令开头,表示对正文中所有包含搜索字符串的行进行替换操作。也就是说命令的开始可以添加影响的行,如果为g表示对所有行;命令的结尾可以使用g来表示是否对每一行的所有字符串都有影响。三、简单的vim正则表达式规则在vim中有四种表达式规则:magic(/m):除了$.*^之外其他元字符都要加反斜杠nomagic(/M):除了$^之外其他元字符都要加反斜杠/v(即 very magic 之意):任何元字符都不用加反斜杠/V(即 very nomagic 之意):任何元字符都必须加反斜杠vim默认使用magic设置,这个设置也可以在正则表达式中通过 /m /M /v /V开关临时切换。例如:

1: //m.*     # 查找任意字符串2: //M.*     # 查找字符串 .* (点号后面跟个星号)3: 4: //v(a.c){3}$  # 查找行尾的abcaccadc5: //m(a.c){3}$  # 查找行尾的(abc){3}6: //M(a.c){3}$  # 查找行尾的(a.c){3}7: //V(a.c){3}$  # 查找任意位置的(a.c){3}$

推荐使用默认的magic设置,在这种情况下,常用的匹配有:

1: //abc     #查找以test开始的字符串 2: /abc/     #查找以test结束的字符串 3:  4: $    匹配一行的结束 5: ^    匹配一行的开始 6: /   匹配一个单词的开始,例如//abcEnter:查找以abc开始的字符串 7: /   匹配一个单词的结束,例如/abc/Enter:查找以abc结束的字符串 8:  9: *    匹配0或多次10: /+   匹配1或多次11: /=   匹配0或1次12: 13: .    匹配除换行符以外任意字符  14: /a   匹配一个字符15: /d   匹配任一数字   16: /u   匹配任一大写字母17: 18: []   匹配范围,如t[abcd]s 匹配tas tbs tcs tds19: /{}   重复次数,如a/{3,5} 匹配3~5个a20: /( /)  定义重复组,如a/(xy/)b 匹配ab axyb axyxyb axyxyxyb ...21: /|   或,如:for/|bar 表示匹配for或者bar22: 23: /%20c  匹配第20列24: /%20l  匹配第20行

vi+文件名,可以创建一个文件

用cat+问价名,可以查看一个文件

用cut -f3+文件名,可以选择文件中的第3段字符

输入英文的冒号:然后输入wq可以保存文件内容并退出

输入英文的冒号:然后输入q可以放弃保存并退出

输入英文的冒号/然后输入一个字符串,可以查找该字符串

如果以上经验帮到您,麻烦在左下角给点个赞,谢谢!




电脑所有的快捷键?
Ctrl+F:打开“查找与替换”对话框,并定位在“查找”标签上。 Ctrl+G:打开“查找与替换”对话框,并定位在“定位”标签上。 Ctrl+H:打开“查找与替换”对话框,并定位在“替换”标签上。 Ctrl+I:使选中的文字倾斜(再按一次,取消倾斜)。 Ctrl+K:打开“插入超链接”对话框。 Ctrl+Shift+L:给光标所在行的文本...

wps文字中怎么批量删除图片?
在WPS文字2019中,可参考以下步骤批量删除图片:1、首先,进入带有图文的目标文档中,如下图所示。2、点击导航栏上的“开始-查找替换”,选择“替换”。3、在“替换”中的“特殊格式”里,选择“图形(I)”。4、再点击“全部替换(A)”。5、这个时候就弹出“全部完成。完成4处替换”,点击“确定...

如何快速查找到相关的内容?
.批量更换CHM目录各项的图标; f..支持批量查找替换多级目录各项的标题文字内容; g..允许用户指定从文本文件的第N行自动截取标题; h..易用的目录编辑器; i..丰富实用的CHM制作选项帮助用户制作更加个性化的专业CHM电子书或CHM帮助文件。 j..内嵌CHM反编译工具。EasyCHM下载地址 crsky\/soft\/4409 ...

word里面怎么一次性把多个不同的词替换成同一个词?
选中文字 按CTRL+H,点“高级\/使用通配符”,在“查找内容”框输入“*”,在“替换为”框输入“北京”,全部替换。

excel如何批量删除单元格内多余的内容?
excel批量删除单元格内多余的内容的具体步骤如下:需要准备的材料分别是:电脑、Excel表格。1、首先打开需要编辑的Excel表格,进入到编辑页面中。2、然后在弹出来的窗口中点击打开查找和选择中的“替换”。3、然后在弹出来的窗口中点击“查找内容”输入想要删除的内容。4、然后点击“全部替换”就可以了。

如何在WORD文件中查找特定的文字?
1、电脑打开Word文档。2、打开Word文档后,按Ctrl+F查找,然后再导航中输入要超找的文字。3、输入文字后,要查找的文字就会显示出来。4、如果要替换文字,按Ctrl+H,查找内容中输入要M2,替换为中输入要替换的文字,然后点击全部替换。5、点击全部替换后,M2就替换为0了。

毕业生必看Ctrl快捷键大全
6.Ctrl+F查找 7.Ctrl+G定位 8.Ctrl+H替换 9.Ctrl+I斜字体 10.Ctrl+J输入换行符 11.Ctrl+K超链接 12.Ctrl+L左对齐 13.Ctrl+M曲线快捷键 14.Ctrl+N新建文件夹 15.Ctrl+O打开 16.Ctrl+P打开“打印” 17.Ctrl+Q启动快速分析 18.Ctrl+R向右填充 19.Ctrl+s保存(重要) 20.Ctrl+T创建表格; 自由变换...

vs定位行号查找行号快捷键该怎么处理
vs定位行号,查找行号快捷键,该怎么处理?VS2017常用快捷键:1.查找和替换 1)查找:使用组合键“Ctrl+F”;2)替换:使用组合键“Ctrl+H”。(批量更改函数名的神器!)2.复制\/剪切\/删除整行代码 1)如果你想复制一整行代码,只需将光标移至该行,再使用组合键“Ctrl+C”来完成复制操作,而无...

在word当中,如何将中英对照当中的中英文分开
用查找替换分两步完成,一步提取英文,一步提取中文。1、在查找替换中的查找栏里输入“[!^1-^127]”,引号里的内容(包括方括号)全部都要输入,替换栏空着就可以,然后点击“更多”或者“高级”按钮,勾选其中的使用通配符选项,再点击全部替换,替换完成后会发现中文全部消失,剩下的就只有英文了。

如何在excel里把年龄分段? 就是把大于0小于20的替换成1,把大于20小于...
在Excel里把年龄分段,把大于0小于20的替换成1,大于20小于30的替换成2,根据截图来看,I列的年龄分段有个特点,就是短横线后面的年龄刚好是一个判断点,如25-30表示是大于20小于30的年龄段,30-40表示大于30小于40的年龄段,那么可以使用查找替换功能,操作如下:第一步:选中I列需要替换的单元格...

水城县13157476022: vim中如何查找和替换字符串 -
翁珊舒肝: 一、 字符串的查找 1. vim 中用 / 和 ? 来查找字符串,两者的区别是: /string 会高亮显示光标后匹配的第一个字符串,回车后光标移到该字符串的第一个字母; string 会高亮显示光标前匹配的第一个字符串,回车后光标移到该字符串的第一个字...

水城县13157476022: vim下什么指令可以实现查找替换功能 -
翁珊舒肝: 全文替换的命令:%s/aaaa/bbbb/g 其中aaaa是你要在文中查找的来(被替换掉的),bbbb是将要替换aaaa的,%是说明要全文查找,可以用别的代替,比如说:1,12s/aaaa/bbbb/g,说的是在文中的第1到第12行查找aaaa并替换成bbbb,后面的g是命令的一部分自,同样的好友c,e,i,这里g的意思是不需要确认知直接替换,如果换成c的话,每次的替换都需要你确认,e是不显示错误,i是不分大道小写,具体的到vim中实验吧,替换的命令很灵活的,学会了会对编辑的效率提高不少

水城县13157476022: linux 中如何用vi编辑器替换相同的字符? -
翁珊舒肝: :%s/要替换的字符/新的字符/g 注:g是全局参数,如果加上这个,你文中有多少就替换多少,如果不加,就只能一个一个的替换! 比如:在文中有Hello,我要将Hello替换成 Hi,如下: :%s/Hello/Hi/g 前面有冒号

水城县13157476022: vi的基础操作有哪些? -
翁珊舒肝: 一、插入模式二、命令模式:移动光标:删除命令、撤销命令、重复命令、文本行移动、复制粘贴、可视模式、替换操作、查找命令、替换命令、vim里执行 shell 下命令.(BY三人行慕课)

水城县13157476022: linux vi -
翁珊舒肝: 进入vi的命令 vi filename :打开或新建文件,并将光标置于第一行首 vi +n filename :打开文件,并将光标置于第n行首 vi + filename :打开文件,并将光标置于最后一行首 vi +/pattern filename:打开文件,并将光标置于第一个与pattern匹配的串...

水城县13157476022: Linux下如何使用Vi编辑器 -
翁珊舒肝: 给点参考吧 还蛮详细的 vi文本编辑器的使用 一.vi的模式 命令模式:vi启动默认进入的模式,可进入输入模"i",或末行模式(:),除了可以完成命令的功能外,也是后两种模式的转换点 输入模式:即文本辑辑状态,最后一行显示"-- INSERT...

水城县13157476022: vi编辑器怎么查找并替换双号行的thee到the? -
翁珊舒肝: :%s/thee/the用宏做这个

水城县13157476022: linux脚本中怎么使用vi编辑器
翁珊舒肝: Vim 是 Vi improved 的缩写,是 vi 的改进版.在Linux中,vi 被认为是事实上的标准编辑器,因为: 所有版本的 Linux 都带有 vi 编辑器; 占用资源少; 与 ed、ex 等其他编辑器相比,vi 对用户更加友好. 你可以使用 vi 编辑器编辑现有的文件,也...

水城县13157476022: 在linux配置文件里怎么一行一行删除 -
翁珊舒肝: 用vi打开编辑,dd是删除一行,其他快捷操作有:光标控制命令 命令 光标移动 h或^h 向左移一个字符 j或^j或^n 向下移一行 k或^p 向上移一行 l或空格 向右移一个字符 G 移到文件的最后一行 nG 移到文件的第n行 w 移到下一个字的开头 W 移到下...

水城县13157476022: 在vi编辑时,如何使用查找功能,就是类似word的ctrl+f的功能~ 谢谢 -
翁珊舒肝: “:/”

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网