我想拥有
的价值date + "%Y%m%d"
将被用作sed中的替换词
cat template.html | sed s/\\@\\@DATENUMBER\\@\\@/date +"%Y%m%d"/g
但这是不允许的。如何提取日期值并正确管道?
答案 0 :(得分:3)
尝试:
sed "s/@@DATENUMBER@@/$(date +"%Y%m%d")/g" template.html
注意:
不需要cat
,因为sed
会将文件名作为参数。
如果您要替换的文本看起来像@@DATENUMBER@@
,则不需要所有这些反斜杠:@
既不是shell活动字符也不是sed-active字符并且不需要逃脱。
如果要执行date
命令,则必须使用命令替换$(...)
。
整个sed s
命令应该在引号中,以便shell不会对其进行分词。