【发布时间】:2018-03-14 17:19:31
【问题描述】:
我正在尝试将占位符 ${SNIPPET} 替换为 js 文件的内容。我很难理解我收到的错误。
sed -e "s/\${SNIPPET}/$(cat snippet.js)/" ../../handlebars/templates/bootstrap-template.hbs
错误:替换命令中的错误标志:'('
寻找可以跨平台(OSX/Linux)工作的解决方案
【问题讨论】:
-
您需要在 js 文件中转义斜杠。
-
您是否建议用一些 sed 替换 cat sn-p.js 以用转义斜杠替换斜杠?
-
在不知道
$SNIPPET的值或snippet.js的内容的情况下,这一切都将是猜测......但这可能与Replace a word with multiple lines using sed? 或其任何一个中描述的问题相同链接的重复项。 -
没有 $SNIPPET 变量。有一个占位符字符串“${SNIPPET}”。 sn-p.js 作为后缀 .js 表示一个 javascript 文件,必须考虑它包含您在 js 文件中可能拥有的所有可能的字符。我尝试了删除换行符的解决方案,但没有奏效@glennjackman 实际上是正确地指出斜线是问题