1

这一定很简单,但不知何故我不明白……我想通过 bash 脚本处理 HTML 文件并将 HTML-String 插入某个节点:

org.html:<div id="wrapper"></div>

MYTEXT=$(phantomjs capture.js www.somesite.com)
# MYTEXT will look something like this:
# <div id="test" style="top: -1.9%;">Something</div>

sed -i "s/\<div id=\"wrapper\"\>/\<div id=\"wrapper\"\>$MYTEXT/" org.html

我总是收到这个错误:bad flag in substitute command: 'd'这可能是因为sed将 的内容也解释$MYTEXT为一种模式——这不是我想要的……</p>

顺便说一句:复制\<div id=\"wrapper\"\>可能也没有必要?

4

1 回答 1

2

似乎/in$MYTEXT</div>部分确实被解释为命令中的最后/一个sed。您可以选择另一个不出现在 中的分隔符,$MYTEXT例如:

sed -i "s|\<div id=\"wrapper\"\>|\<div id=\"wrapper\"\>$MYTEXT|" org.html
于 2013-11-12T15:23:04.757 回答