类似的东西:
cat template.txt | ruby -e 'puts STDIN.read.sub("%placeholder%", IO.read("content.txt"))' > output.txt
或者:
ed template.txt <<EOF
/%placeholder%/d
.r content.txt
w output.txt
EOF
任何替代方案?
答案 0 :(得分:1)
[me@home]$ sed -e '/\$xxx/r content.txt' -e '/\$xxx/d' template.txt
.,:;-+=_'"`*^?!
.,:;-+=_'"`*^?!
&$%#@|/\()[]{}<>
&$%#@|/\()[]{}<>
第一个命令搜索$xxx
,然后打印出content.txt
的内容。第二个删除$xxx
。
您还可以使用多行命令,在脚本中使用时更具可读性。
sed -e '/\$xxx/{
r content.txt
d
}' template.txt