首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >vi开关并替换为VI。

vi开关并替换为VI。
EN

Stack Overflow用户
提问于 2014-10-21 03:16:37
回答 3查看 60关注 0票数 0

这是一个配置文件,swith失败了,所以网络管理员想要为swith设置一个新的路径,而我需要快速地更改端口。所以我使用的是%s/:64*$/:57000/g,而这并没有改变它们。最后我用手做了。我怎么能很快地改变: in vi?

代码语言:javascript
复制
Addr.corp-unix-b1 = corp6503xap:64001
Addr.corp-unix-b2 = corp6503xap:64002
Addr.corp-unix-b3 = corp6503xap:64003
Addr.corp-unix-b4 = corp6503xap:64004
Addr.corp-unix-b4-dia = corp6503xap:64005
Addr.corp-unix-b5 = corp6503xap:64006
Addr.corp-unix-b6 = corp6504xap:64007
Addr.corp-unix-b6-aapl = corp6504xap:64008
Addr.corp-unix-b7 = corp6504xap:64009
Addr.corp-unix-b8 = corp6504xap:64010
Addr.corp-unix-b8-spy = corp6504xap:64011
Addr.corp-unix-b8-fas = corp6504xap:64012
Addr.corp-unix-b8-2 = corp6504xap:64013
Addr.corp-unix-8a-gld = corp6504xap:64014
Addr.corp-unix-b9 = corp6504xap:64015
Addr.corp-unix-b10 = corp6504xap:64016
Addr.togen-xpho-b6-aapl = corp9189pap:3333
EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2014-10-21 03:20:07

您的表达式缺少一个.,因此您试图匹配6后面的变量数为4。如果您有.,则将表达式64与任意字符的变量数匹配到行尾。

代码语言:javascript
复制
%s/:64.*$/:57000/g
票数 4
EN

Stack Overflow用户

发布于 2014-10-21 03:22:04

在正则表达式中,*表示前面字符中的0或更多字符,在您的示例中,该字符是4

.与任何字符匹配,因此您的替换将被写入:%s/:64.*$/:57000/g

票数 2
EN

Stack Overflow用户

发布于 2014-10-21 23:45:58

只是为了本着SE的精神提供另一种解决方案:

您可以结合使用:g:normal

代码语言:javascript
复制
:g/:64/norm $bC57000

它使用:64查找行,转到行尾,将光标移动到单词的开头,并将行的其余部分更改为57000。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26478314

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档