千家信息网

如何用shell生成简单格式的xml

发表于:2025-01-20 作者:千家信息网编辑
千家信息网最后更新 2025年01月20日,这篇文章主要介绍"如何用shell生成简单格式的xml",在日常操作中,相信很多人在如何用shell生成简单格式的xml问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答"如
千家信息网最后更新 2025年01月20日如何用shell生成简单格式的xml

这篇文章主要介绍"如何用shell生成简单格式的xml",在日常操作中,相信很多人在如何用shell生成简单格式的xml问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答"如何用shell生成简单格式的xml"的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

以下是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文件如下

代码如下:


<投递信息>
<硬件>
<网卡 value="1"/>


到此,关于"如何用shell生成简单格式的xml"的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注网站,小编会继续努力为大家带来更多实用的文章!

0