如何实现shell中使用sed,while循环等替换文件中的链接?

%如何实现shell中使用sed,while循环等替换文件中的链接?
%2017-05-14

假设

file1文件中含有若张图片链接,每个图片链接独占一行

#cat file1
文字文字文字文字
<img src="http://www.aaa.com/01.jpg"/>
文字文字文字
<img src="http://www.aaa.com/03.jpg"/>
文字文字文字文字
<img src="http://www.aaa.com/33.jpg"/>
文字文字文字文字
<img src="http://www.aaa.com/55.jpg"/>
文字文字文字文字
...

file2文件中含有同样数量图片链接列表,每个图片链接独占一行

#cat file2
http://www.bbb.com/23.jpg
http://www.bbb.com/34.jpg
http://www.bbb.com/55.jpg
http://www.bbb.com/78.jpg
...

将file1中所有图片链接,按files2顺序依次替换,结果如下file3:

#cat file3
文字文字文字文字
<img src="http://www.bbb.com/23.jpg"/>
文字文字文字
<img src="http://www.bbb.com/34.jpg"/>
文字文字文字文字
<img src="http://www.bbb.com/55.jpg"/>
文字文字文字文字
<img src="http://www.bbb.com/78.jpg"/>
文字文字文字文字
...
阅读 4.5k
1 个回答
awk '/img/{getline b <"file2";sub("http[^\"]+",b)}1' file1
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进