我要替换文件中的主机ID,并且每个文件中的主机ID不同,因此我必须替换标签<hostid>
和</hostid>
之间的内容,每个文件只有一个一<hostid>
行
<hostid>71342-231VMKDK-47WW-03dMV6</hostid>
到
<hostid>xxxx-yyyyy-zzz-uuu-bb</hostid>
我确实尝试了类似以下的方法,但该方法不起作用
sed -i "" -e :a -e 's/\(hostid>[X]*\)[^X]\(.*<\)/\1\something\</;ta'
答案 0 :(得分:1)
请您尝试以下。
sed '/hostid/s/>.*</>xxxx-yyyyy-zzz-uuu-b</' Input_file
如果您想将输出保存到Input_file自身中,同时备份Input_file,则将sed
更改为sed -i.bak ...
。