如何用sed某一行之前加入一些内容呢?

首先上代码:htm_file=text.htmltmp_htm$(cat$cat$htm_file)tmp_htm=$(echo$tmp_htm|sed"/<!--oth... 首先上代码:
htm_file=text.html

tmp_htm$(cat $cat $htm_file)

tmp_htm=$(echo $tmp_htm | sed "/<!--otherstop---->/i\ffdsafdf")

echo $tmp_htm

而text.html的内容是:
<html>
<head>
<!--otherstart-->
<!--otherstop-->

</head>

</html>
我的本意是插入到<!--otherstop-->的上一行,也就是位于<!--otherstart-->和<!--otherstop-->之间。
但是,这句直接插入到了文件的开头,也就是<html>的上面。
我觉得,可能是tmp_htm保存htm_file的内容的时候,将回车去掉了,所以直接加在了开头。
那该如何解决呢?
展开
 我来答
百度网友5311d79
2014-10-11 · TA获得超过1.9万个赞
知道大有可为答主
回答量:6356
采纳率:71%
帮助的人:3221万
展开全部
sed -i '/otherstop/i\ffdsafdf' text.html

这样就可以了。


首先确保 text.html 为unix格式,如无法确认,请先执行下面这条语句:

dos2unix text.html
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式