您好,欢迎来到分类目录网!本站提供网站免费收录和快审收录,文章发布和链接交换等服务! 视频网站目录大全小说网站目录大全行业网站目录大全
广告联系QQ:158925126当前位置:分类目录网 » 站长资讯 » 技术教程 » 文章详细 订阅RssFeed

linux文件内容查找和替换命令

来源:本站原创 浏览:146次 时间:2018-07-09

很多新手在开始接触使用linux,总会有各种不习惯,比如遇到一个文件内容测查找和替换的需求,要怎么解决呢,可以学习参考下以下的实现方式:

1、vi命令下的查找和替换

1.1 vi下的查找

/pattern<Enter> :向下查找pattern匹配字符串

?pattern<Enter>:向上查找pattern匹配字符串
使用了查找命令之后,使用如下两个键快速查找:
n:按照同一方向继续查找
N:按照反方向查找
pattern是需要匹配的字符串,例如:
/name<Enter>      #查找name
/name<Enter>    #查找name单词(注意前后的空格)
除此之外,pattern还可以使用一些特殊字符,包括(/、^、$、*、.),其中前三个这两个是vi与vim通用的,“/”为转义字符。
/^name<Enter>    #查找以name开始的行
/name$<Enter>    #查找以name结束的行
//^name<Enter>    #查找^name字符串

1.2 vi下的替换

:s/name/title/         #替换当前行第一个 name 为 title
:s/name/title/g     #替换当前行所有 name 为 title
:n,$s/name/title/     #替换第 n 行开始到最后一行中每一行的第一个 name 为 title
:n,$s/name/title/g     #替换第 n 行开始到最后一行中每一行所有 name 为 title
#(n 为数字,若 n 为 .,表示从当前行开始到最后一行)
:%s/name/title/        #(等同于 :g/name/s//title/) 替换每一行的第一个 name 为 title
:%s/name/title/g    #(等同于 :g/name/s//title/g) 替换每一行中所有 name 为 title
可以使用 #或+ 作为分隔符,此时中间出现的 / 不会作为分隔符
:s#name/#title/#         替换当前行第一个 name/ 为 title/
:%s+/oradata/apras/+/user01/apras1+ (
使用+ 来 替换 / ): /oradata/apras/替换成/user01/apras1/

2.sed和grep配合

命令:sed -i s/yyyy/xxxx/g `grep yyyy -rl --include="*.txt" ./`

作用:将当前目录(包括子目录)中所有txt文件中的yyyy字符串替换为xxxx字符串。其中,

-i 表示操作的是文件,``括起来的grep命令,表示将grep命令的的结果作为操作文件。

s/yyyy/xxxx/表示查找yyyy并替换为xxxx,后面跟g表示一行中有多个yyyy的时候,都替换,而不是仅替换第一个

另外,如果不需要查找子目录,仅需要在当前目录替换,用sed命令就行了,命令如下:sed -i s/xxxx/yyyy/g ./*.txt

3.find命令查找和替换

命令格式:find -name '要查找的文件名' | xargs perl -pi -e 's|被替换的字符串|替换后的字符串|g'

#查找替换当前目录下包含字符串并进行替换

find -name '*.txt' | xargs perl -pi -e 's|被替换的字符串|替换后的字符串|g'

#递归查找替换

find . -type f -name '*.html' | xargs perl -pi -e 's|被替换的字符串|替换后的字符串|g'

推荐站点

  • 闲鱼网闲鱼网

    闲鱼.淘宝二手是一个社区化的二手闲置交易市场,不仅支持各种同城及线上的担保交易,更安全,同时还有最专业的放心购二手商家,让你轻松在这买卖二手闲置。

    2.taobao.com
  • 小米商城小米商城

    小米商城直营小米公司旗下所有产品,囊括小米手机系列小米MIX 3、小米8、小米Note 3,红米手机系列红米5 Plus、红米6 Pro,智能硬件,配件及小米生活周边,同时提供小米客户服务及售后支持。

    www.mi.com
  • 戏骨电影戏骨电影

    戏骨影院2019电影最新电影最新电视剧西瓜影音百度影音,电视剧,卡通片,综艺片,体育世界,记录片等高清电影以及伦理电影在线免费观看

    www.xigu.fun
  • 站酷 (ZCOOL)站酷 (ZCOOL)

    站酷 (ZCOOL),中国人气设计师互动平台。深耕设计领域十年,站酷聚集了470万优秀设计师、摄影师、插画师、艺术家、创意人,设计创意群体中具有较高的影响力与号召力。

    www.zcool.com.cn
  • 菜鸟教程菜鸟教程

    菜鸟教程(www.runoob.com)提供了最全的编程技术基础教程, 介绍了HTML、CSS、Javascript、Python,Java,Ruby,C,PHP , MySQL等各种编程语言的基础知识。 同时本站中也提供了大量的在线实例,通过实例,您可以更好的学习编程。..

    www.runoob.com