我正在研究一个bash脚本,它必须准备一封电子邮件发送给用户.
它汇总了一些数据,最终会产生多行内容.对于存储的示例$DATA.
现在,经过一些stfw我找到了一些类似的东西,sed -ei "s/_data_/${DATA}/g" mail.tpl并且还用多行替换变量.他们都没有工作.
现在问题是,如何sed用多行文本替换某些内容?
(sed也欢迎替代品!)
我正在尝试使用sed进行插入(刚刚读过它)并且我因为尝试插入多行而感到难过?
我目前正在做的是:
sed -i "${line} i\
/* Name - ID */ \
select @ID = NULL \
from Animals \
where VrsnID = @VrsnID \
and Request= \"Request\" \
\
" animalNames.txt
Run Code Online (Sandbox Code Playgroud)
注意echo $line== 131
新问题
输出中的所有内容都显示在一行中?(也缺少第一个缩进)
/* Name - ID */ select @ID = NULL from Animals where VrsnID = @VrsnID and Request= "Request"
Run Code Online (Sandbox Code Playgroud)
解决
但这引发:
sed: -e expression #1, char 47: unknown command: `
'
Run Code Online (Sandbox Code Playgroud)
知道为什么吗?
谢谢你的时间