SHELL脚本在文本中指定的位置添加内容

SHELL脚本在文本中指定的位置添加内容。在xx.xml中的最后一个</beans>前添加<bean>....</bean>,怎么实现

首先得到最后一个</bean>所在行的行号:

line=`sed -n '/<\/bean>/=' xx.xml | tail -n1`

然后在该行最前面添加<bean>:

sed -i "${line}s/.*/<bean>&/" xx.xml

(利用sed的 -i 选项直接修改原文件)

温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-11-14
awk 'BEGIN{RS="";FS="</beans>";str=""} {for(i=1;i<NF;i++) str=str (i==1? $i : FS $i); printf("%s<bean></bean>%s%s", str, FS, $NF)}' xx.xml > yy.xml

第2个回答  2013-11-14
兄弟, 如果你不是在做实验的话, 我可以为你解决追问

麻烦帮忙解决下

追答

在百度私信里谈这个问题吧

追问

私信看不到,只是代理上的

追答

什么意思哦?看不懂, 那你可以直接kou kou 我吧? +741三45零15.
然后就解决这个问题了

相似回答