shell生成简单格式的xml实例

时间:2021-05-22

以下是shell代码:
create_xml.sh
复制代码 代码如下:
#! /bin/bash

#author: dengzhaoqun
#date: 201202/14

outfile=out
tabs=0

put(){
echo '<'${*}'>' >> $outfile
}

put_head(){
put '?'${1}'?'
}

out_tabs(){
tmp=0
tabsstr=""
while [ $tmp -lt $((tabs)) ]
do
tabsstr=${tabsstr}'\t'
tmp=$((tmp+1))
done
echo -e -n $tabsstr >> $outfile
}

tag_start(){
out_tabs
put $1
tabs=$((tabs+1))
}

tag_end(){
tabs=$((tabs-1))
out_tabs
put '/'${1}
}

tag_value(){
out_tabs
str=""
str=${1}' value="'${2}'"/'
put $str
}

以下是测试代码:
ts_xml.sh
复制代码 代码如下:
#! /bin/bash

#author: dengzhaoqun
#date: 20120215

source './create_xml.sh'
put_head 'xml version='1.0' encoding="GBK"'
tag_start '投递信息'
tag_start '硬件'
tag_value '网卡' 1
tag_end '硬件'
tag_end '投递信息'

生成的xml文件如下

复制代码 代码如下:
<?xml version=1.0 encoding="GBK"?>
<投递信息>
<硬件>
<网卡 value="1"/>
</硬件>
</投递信息>

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章