【发布时间】:2012-08-04 23:00:37
【问题描述】:
我正在尝试在 shell 脚本中使用 sed 将 html 超链接标签添加到纯文本文件中的 url。
这是我的newtext.txt的内容:
www.example.com
这是运行脚本后我想要的 newtext.txt 的所需内容:
<a href="http://www.example.com">www.example.com</a>
这是我当前脚本的内容,addhtml.sh:
#!/bin/bash
newtextv='cat newtext.txt'
sed -i.bak 's|\(www.*\)|<a href="$newtextv">\1</a>|' newtext.txt
但不幸的是,运行脚本后,newtext.txt的内容变成了:
<a href="$newtextv">www.example.com</a>
我相信我的错误在某种程度上与我的变量被引用的方式有关?
我最终希望这个脚本也能够转换完整的 url(包含 http:// )......我显然需要大量提高我的 sed 知识(我花了几天时间才做到这一点),但我无法理解这个。
谢谢!
【问题讨论】:
-
感谢所有帮助!我保证在我有能力的时候回馈社区。谢谢!我希望我能够投票给你们所有人。