sed修改xml
来源:互联网 发布:极限挑战大电影 知乎 编辑:程序博客网 时间:2024/06/06 13:06
论坛上的一个问题:
<DC_Public>
< Codec_Space Codec_SpaceValue="0" />< HeartBeatCfg HeartBeatRate="16" Mux_HB_DECount="2" Codec_HB_DECount="2" Prov_HB_DECount="2" />
< DC_Public PathValue="dc_user.rft" DefaultUserName="administrator" DefaultUserPassword="12345678" PrivateData="PrivateData" />
< CheckPW TheValue="1" />
< Device_Info VideoInputNum="10" AudioInputNum="1" VideoOutputNum="4" AudioOutputNum="1" />
< StreamTransport ConnectTimes="0" />
</DC_Public>
<DC_NetWork>
< Codec_SockControl Codec_IP="192.168.240.240" Codec_CtrPort="3300" Codec_UDPHeartPort="27229" Codec_LogPort="27235" Link_Internal_Codec="eth2" />
< Mux_SockControl Mux_LogPort="27235" Mux_CtrPort="5000" Mux_IP="192.168.230.230" />
< LinkCfg Link_Internal_Mux="eth1" Link_OutSide="eth3" Link_Internal_Codec="eth2" />
< ControlListen ListenPort="2000" />
</DC_NetWork>
<DC_SerialProt>
< Port1 PortUsage="3" PortEnable="1" PortDevAddr="/dev/ttyS0" PortBaudrate="9" PortByteSize="4" PortParity="0" PortStopBit="1" FlowControl="0" />
< Port2 PortUsage="2" PortEnable="1" PortDevAddr="/dev/ttyS1" PortBaudrate="9" PortByteSize="4" PortParity="0" PortStopBit="1" FlowControl="0" />
< Port3 PortUsage="4" PortEnable="1" PortDevAddr="/dev/ttyS2" PortBaudrate="9" PortByteSize="4" PortParity="0" PortStopBit="1" FlowControl="0" />
< Port4 PortUsage="5" PortEnable="1" PortDevAddr="/dev/ttyS3" PortBaudrate="9" PortByteSize="4" PortParity="0" PortStopBit="1" FlowControl="0" />
< Port5 PortUsage="7" PortEnable="1" PortDevAddr="/dev/ttyS4" PortBaudrate="13" PortByteSize="4" PortParity="0" PortStopBit="1" FlowControl="0" />
< Port6 PortUsage="1" PortEnable="1" PortDevAddr="/dev/ttyS5" PortBaudrate="9" PortByteSize="4" PortParity="0" PortStopBit="1" FlowControl="0" />
</DC_SerialProt>
<OSDManageMoudle>
< OSDBaseInfo InputOSDCount="10" />
< InputOSD_ID1 OSD_Script="Input1" InputVSID="1" FontSize="10" FontSpace="0" Position="1" RedColor="255" GreenColor="255" BlueColor="255" Enable="0" />
< InputOSD_ID2 OSD_Script="Input2" InputVSID="2" FontSize="10" FontSpace="0" Position="1" RedColor="255" GreenColor="255" BlueColor="255" Enable="0" />
< InputOSD_ID3 OSD_Script="Input3" InputVSID="3" FontSize="10" FontSpace="0" Position="1" RedColor="255" GreenColor="255" BlueColor="255" Enable="0" />
< InputOSD_ID4 OSD_Script="Input4" InputVSID="4" FontSize="10" FontSpace="0" Position="1" RedColor="255" GreenColor="255" BlueColor="255" Enable="0" />
< InputOSD_ID5 OSD_Script="Input5" InputVSID="5" FontSize="10" FontSpace="0" Position="1" RedColor="255" GreenColor="255" BlueColor="255" Enable="0" />
< InputOSD_ID6 OSD_Script="Input6" InputVSID="6" FontSize="10" FontSpace="0" Position="1" RedColor="255" GreenColor="255" BlueColor="255" Enable="0" />
< InputOSD_ID7 OSD_Script="Input7" InputVSID="7" FontSize="10" FontSpace="0" Position="1" RedColor="255" GreenColor="255" BlueColor="255" Enable="0" />
< InputOSD_ID8 OSD_Script="Input8" InputVSID="8" FontSize="10" FontSpace="0" Position="1" RedColor="255" GreenColor="255" BlueColor="255" Enable="0" />
< InputOSD_ID9 OSD_Script="Input9" InputVSID="9" FontSize="10" FontSpace="0" Position="1" RedColor="255" GreenColor="255" BlueColor="255" Enable="0" />
< InputOSD_ID10 OSD_Script="Input10" InputVSID="10" FontSize="10" FontSpace="0" Position="1" RedColor="255" GreenColor="255" BlueColor="255" Enable="0" />
< RemoteInputOSD OSD_Script="RemoteSource" InputVSID="0" FontSize="10" FontSpace="0" Position="1" RedColor="255" GreenColor="255" BlueColor="255" Enable="0" />
< _TimeOSDBaseInfo1 Xpos="0" Ypos="0" RedColor="0" GreenColor="0" BlueColor="0" Enable="0" />
< BackgroundBaseInfo Enable="0" />
< _TimeOSDBaseInfo2 Xpos="0" Ypos="0" RedColor="0" GreenColor="0" BlueColor="0" Enable="0" />
< RemoteSource Enable="1" />
</OSDManageMoudle>
例如我要增加节点DC_SerialProt的子节点Port2的属性 ProtSize="56" 用sed命令如何做呢,首先我得定位节点DC_SerialProt的内容,然后再其中定位子节Port2,然后才能添加属性,改如何做啊。。。大神教教吧
解决方法:
sed -i '/<DC_SerialProt>/,/<\/DC_SerialProt>/{/< Port2/{s/\/>/ ProtSize="56" \/>/}}' 1.xml
作者:帅得不敢出门 程序员群31843264
0 0
- sed修改xml
- 使用 sed 修改配置文件
- 使用sed修改文本
- [sed]直接修改文件
- SED修改指定行
- sed命令修改行
- liunx sed 修改文件
- 用 sed 批量修改文件
- sed 插入或修改文本
- sed修改文本用法总结
- shell sed 文件修改 环境变量
- sed过滤一般XML注释
- 修改XML
- XML修改
- 修改XML
- XML修改
- sed实现直接修改文件内容
- sed各种修改文本用法总结
- 二、可以导入xlsx格式的Excel
- 赶快来
- THEOS 简单例子 亲测可用
- extern的3种常见用法:
- 从文件导入数据到MySQL数据库
- sed修改xml
- Java Abstract Class
- javascript 闭包
- 一些注册码
- Unique Binary Search Trees II
- 经典智力题:飞机加油问题
- 利用 org.apache.commons.io.FileUtils快速读写文件
- 设置 windows 大小写敏感
- 【从零单排之二】科大讯飞语音包Mscdemo的使用