欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  网络运营

shell生成简单格式的xml实例

程序员文章站 2022-06-02 08:49:19
以下是shell代码: create_xml.sh 复制代码 代码如下: #! /bin/bash #author: dengzhaoqun #date: 201...

以下是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"/>
 </硬件>
</投递信息>