`

【转】用shell生成简单格式的xml

xml 
阅读更多
http://blog.csdn.net/dengzhaoqun/article/details/7262271

以下是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"/>  
    </硬件>  
</投递信息>  
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics