Linux在所有文件中查找和替换
系统大全为您提供
经常会碰到这样的情况:查找某个目录下所有包含某个字符串的所有文件,并将这些文件中的这个字符串用另外的字符串替换进行替换。这种情况下,网网要检查的文件比较多,逐一进行检查替换太麻烦,这个时候,我们就应该找一个能够一条命令解决问题的方法。
grep pattern file.txt命令默认的行为是将file.txt文件中,匹配pattern的行输出到标准输出。这个功能能帮助我们在文件中查找一个字符串出现的上下文,但是并不能够帮助我们实现下一步复杂的操作,所以有必要稍微了解下grep的一些选项。
现在测试文件的内容如下:
$ cat target.txt
<a class="navbar-brand" href="http://yyy.xxx.edu.cn/">Panda Search</a>
text-decoration: none;" href="http://www.asdf.net/scholar/xindong_wu.html">Xindong
" href="http://asdf.net/scholar/Federi
<a class="navbar-brand" href="http://yyy.xxx.edu.cn/">Panda Search</a>
href="http://www.asdf.net/scholar/Gong-Qing_Wu.html">
href="http://asdf.net/scholar/Federico_Bocardi.html">Federico occardi</a><><span class="Apple-converted-space"> </span><li style="display: inline-block; padding-right: 5px; padding-left: 5px;"><a style="color: rgb(66, 139
为了测试我们将这个文件,另外拷贝出两份,重命名然后放在如下的目录结构中:
$ tree .
.
├── a
│ └── target1.txt
├── target2.txt
└── target.txt
执行grep命令:
$ grep -rn "http://yyy.xxx.edu.cn" *
a/target1.txt:1:<a class="navbar-brand" href="http://yyy.xxx.edu.cn/">Panda Search</a>
a/target1.txt:5: <a class="navbar-brand" href="http://yyy.xxx.edu.cn/">Panda Search</a>
target2.txt:1:<a class="navbar-brand" href="http://yyy.xxx.edu.cn/">Panda Search</a>
target2.txt:5: <a class="navbar-brand" href="http://yyy.xxx.edu.cn/">Panda Search</a>
target.txt:1:<a class="navbar-brand" href="http://yyy.xxx.edu.cn/">Panda Search</a>
target.txt:5: <a class="navbar-brand" href="http://yyy.xxx.edu.cn/">Panda Search</a>
grep提供下面的选项:
*就是一般的bash通配符,表示当前目录所有文件,当然,你也可以写某个文件名
-r 是递归查找,意思就是也查找当前目录的子目录中的文件
-n 是显示行号
-i 忽略大小写
-l 列出匹配的文件名
-L 列出不匹配的文件名
-w 只匹配整个单词,而不是字符串的一部分(如只匹配‘man’,包括man两边有符号的如‘.man.’,或者是‘=man=’而不包括‘ woman ’或者是‘ manly ’)
2、Linux其他预备技能 2.1 将命令输出作为参数方式有好多种,这里列出两种:``和$(),下面是一个例子。
$ echo `ls`
a target2.txt target.txt t.tt
$ echo $(ls)
a target2.txt target.txt t.tt
2.2 文件替换sed sed命令的使用参见前面的文章,这里只说用到的地方:
sed -i "s/old/new/g" file1.txt file2.txt 可以将file*.txt中的所有old换成new。如果new什么都没有,就是表示删除old的意思。
3、将上面的技能串起来这样,只需几行,就能够完成所有文件中,指定几种字符串的替换了。当然,也要注意下,sed命令的使用中,当有'/'字符的时候要注意转义,具体如下:
$ sed -i "stp://yyy.xxx.edu.cn//g" $(grep -lr "http://yyy.xxx.edu.cn" *)
$ cat target.txt
<a class="navbar-brand" href="/">Panda Search</a>
text-decoration: none;" href="http://www.asdf.net/scholar/xindong_wu.html">Xindong
" href="http://asdf.net/scholar/Federi
<a class="navbar-brand" href="/">Panda Search</a>
href="http://www.asdf.net/scholar/Gong-Qing_Wu.html">
href="http://asdf.net/scholar/Federico_Bocardi.html">Federico occardi</a><><span class="Apple-converted-space"> </span><li style="display: inline-block; padding-right: 5px; padding-left: 5px;"><a style="color: rgb(66, 139
$ sed -i "stp://www.asdf.net//g" $(grep -lr "http://www.asdf.net" *)
$ sed -i "stp://asdf.net//g" $(grep -lr "http://asdf.net" *)
$ cat target.txt
<a class="navbar-brand" href="/">Panda Search</a>
text-decoration: none;" href="/scholardong_wu.html">Xindong
" href="/scholar/Federi
<a class="navbar-brand" href="/">Panda Search</a>
href="/scholar/Gong-Qing_Wu.html">
href="/scholar/Federico_Bocardi.html">Federico occardi</a><><span class="Apple-converted-space"> </span><li style="display: inline-block; padding-right: 5px; padding-left: 5px;"><a style="color: rgb(66, 139
$
看到这里,或许你也明白我要做什么了。其实,是这样的,一位童鞋往我们线上的系统中加了几个静态网页,网页中用到的超链全部是直接从浏览器复制过来的,包括站内的跳转。这样明显不科学,尽管当时是没毛病,但是现在我们的域名要换了,问题就来了,这些老域名的跳转链接都不能访问了。为了根治这个问题,我决定将这些站内跳转的域名部分全部
以上就是系统大全给大家介绍的如何使的方法都有一定的了解了吧,好了,如果大家还想了解更多的资讯,那就赶紧点击系统大全官网吧。
本文来自系统大全http://www.win7cn.com/如需转载请注明!推荐:win7纯净版
相关文章
- 系统之家装机大师 U 盘重装 Win10 系统详细教程
- 微软延长 App-V Server 支持周期至 2029 年 10 月 9 日,仅提供安全补丁
- 微软推送 Win11 26H1 Build 28120.3272 预览版:修复音频引发应用崩溃
- 微软推送 Win11 多通道预览更新:Xbox 游戏任务视图焕新
- 系统之家装机大师增强版使用教程
- 系统之家装机大师 U 盘重装 Win7 系统详细教程
- 系统之家装机大师 U 盘重装 Win11 系统详细教程
- 微软重构 Win11 照片应用:统一本地、OneDrive、iCloud 图库
- 微软盘点 Win11 年度优化:8G 老电脑内存减负,系统响应最高提升 20%
- Epic 喜加二:《烂奶酪》《Agent A - 伪装游戏》游戏免费领取
系统下载排行榜71011xp
【番茄花园】Win7 64位 快速稳定版
2【雨林木风】Windows7 64位 装机旗舰版
3【纯净之家】Win7 64位 Office2007 办公旗舰版
4【电脑公司】Windows7 64位 免费旗舰版
5JUJUMAO Win7 64位旗舰纯净版
6【游戏专用】Windows7 64位 装机旗舰版
7【深度技术】Windows7 64位 官方旗舰版
8【番茄花园】Windows7 64位 旗舰装机版
9【纯净之家】Windows7 SP1 32位 全补丁旗舰版
10电脑公司 Win7 64位经典旗舰版
【纯净之家】Windows10 22H2 64位 企业版
2【纯净之家】Windows10 32位 官方正式版
3【雨林木风】Windows10 64位稳定版系统
4【技术员】Windows10 64位 纯净版iso镜像
5JUJUMAO Win10 64位 纯净版镜像
6【技术员】Windows10 64位 系统纯净版
7【技术员】Windows10 64位 纯净装机版
8【番茄花园】Windows10 64位 专业版镜像
9【技术员】Windows10 64位 LTSC 纯净版
10【雨林木风】Windows10 64位 官方专业版
【纯净之家】Windows11 23H2 64位 纯净专业版
2【纯净之家】Windows11 23H2 64位 游戏优化版
3【纯净之家】Windows11 23H2 64位 企业版系统
4【纯净之家】Windows11 23H2 64位 中文家庭版
5风林火山Windows11下载中文版(24H2)
6JUJUMAO Win11 24H2 64位 精简版镜像
7【纯净之家】Windows11 23H2 64位 纯净家庭版
8JUJUMAO Win11 24H2 64位 专业版镜像
9电脑公司Win11 64位专业优化版 V2021.08
10电脑公司Win11 64位高级专业版系统 V2022
深度技术 GHOST XP SP3 电脑专用版 V2017.03
2深度技术 GGHOST XP SP3 电脑专用版 V2017.02
3萝卜家园 GHOST XP SP3 万能装机版 V2017.03
4番茄花园 GHOST XP SP3 极速体验版 V2017.03
5雨林木风 GHOST XP SP3 官方旗舰版 V2017.03
6萝卜家园 GHOST XP SP3 完美装机版 V2016.10
7Win7系统下载 PCOS技术Ghost WinXP SP3 2017 夏季装机版
8电脑公司 GHOST XP SP3 经典旗舰版 V2017.03
9雨林木风GHOST XP SP3完美纯净版【V201710】已激活
10雨林木风 GHOST XP SP3 精英装机版 V2017.04
热门教程
装机必备 更多+
重装工具