`

【转】用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"/>  
    </硬件>  
</投递信息>  
分享到:
评论

相关推荐

    shell生成简单格式的xml实例

    这个简单的例子展示了如何使用Shell脚本生成XML文件,虽然功能有限,但对于快速生成小规模、结构简单的XML数据非常有用。然而,对于复杂的XML结构,更推荐使用专门的XML处理库,如Perl的XML::LibXML或Python的lxml库...

    shell.dat生成专用器

    4. **编程接口(API)**:生成shell.dat文件可能需要使用特定的API,尤其是当需要动态生成或修改文件内容时。例如,通过编程语言如Python、C#或VBScript,可以调用系统API来创建和写入shell.dat文件。 5. **安全性...

    shell脚本实现快速生成xml格式sitemap实例分享

    本篇文章将深入讲解如何使用shell脚本快速生成XML格式的Sitemap,这对于管理中小型网站来说,是一种高效且实用的方法。 首先,让我们了解shell脚本的基本概念。Shell脚本是基于Linux或Unix系统的命令行解释器,用于...

    将数据库的表生成XML文件

    这个“将数据库的表生成XML文件”的实例提供了一种实用的方法,帮助开发者将数据库中的数据结构化地输出到XML文件,方便在不同的系统间交换或存储。通过熟练掌握这一技能,我们可以提升数据操作的灵活性和效率,满足...

    C#Excel数据转换为XMl格式

    3. **遍历行和单元格**:现在,我们可以迭代工作表中的每一行和每个单元格,读取数据并存储到一个适当的数据结构中,例如`List, string&gt;&gt;`,以便稍后生成XML。 ```csharp List, string&gt;&gt; dataRows = new List, ...

    将SQL数据库表转换成XML文件输出(脚本)

    - 使用`bcp`命令来创建格式文件,再使用`FOR XML AUTO`来生成XML数据,并最终通过`bcp`命令将XML数据导出到指定路径。 ```sql declare cur cursor for select tblname from #temp open cur fetch next from ...

    xml文件生成

    2. **编程语言生成**:通过编程语言如Java、Python、C#等,使用相应的库或API动态生成XML文档。例如,在Java中,可以使用DOM(Document Object Model)、SAX(Simple API for XML)或StAX(Streaming API for XML)...

    SFTp上传下载and xml解析丶生成

    它使得Java对象与XML之间的转换变得非常简单,只需简单的配置就能完成复杂的映射。 1. 设置XStream实例:创建`XStream`对象,并根据需求配置转化规则。 2. 序列化:使用`toXML()`方法将Java对象转化为XML字符串。 3...

    linux下shell脚本的QT翻译工具的使用,生成ts和qm

    - **.TS(Translation Source)**:这是一种XML格式的文件,包含了应用程序中的所有可翻译字符串及其默认英文版本。 - **.QM(Qt Message)**:这是经过编译后的二进制文件,用于在运行时加载和检索翻译字符串。 ...

    protobuf 自动生成c# .cs文件

    标题中的“protobuf 自动生成c# .cs文件”是指使用Google的Protocol Buffers(简称protobuf)工具,将定义的数据结构协议文件转换为C#编程语言的.cs源代码文件。这个过程极大地简化了数据序列化和反序列化的操作,...

    Adb uiautomator XML 解析, 脚本开发必备利器 模拟器/真机通用

    大家使用uiautomator dump 来获取界面元素xml后。基本都是用取文本中间或正则来分析的。这样不但效率低下,对一些特征不明显的xml元素很难取到。如果直接用xml来匹配就不存在这个问题了。并且可以基于本框架进行快速...

    nmap_magic:将 nmap XML 输出的命令行处理为更可用的 tsv 格式文件

    在进行大量扫描后,nmap会生成XML格式的详细报告,包含所有扫描结果。然而,XML格式的数据虽然全面,但直接阅读和分析并不方便,尤其是对于非专业人士。 "nmap-magic" 是一个Shell脚本,其目的是简化这个过程,将...

    shell脚本+ant脚本

    Ant是Apache软件基金会开发的一个Java项目构建工具,它使用XML格式的配置文件来定义构建任务。Ant的主要目标是替代传统的Makefile,提供跨平台的构建解决方案。Ant的任务系统非常灵活,可以执行编译、测试、打包、...

    LMDB数据格式的生成

    它通常会调用其他Python脚本来执行实际的转换工作,如读取VOC数据集,生成所需的键值对,并写入到LMDB数据库中。 2. **读取图像名称**:`rd.py` 可能是用于读取VOC数据集中的图像文件名。VOC数据集的XML标注文件...

    Microsoft XML

    XPS是一种基于XML的固定文档格式,与PDF类似,被设计用于呈现和交换文档,这些文档通常包含结构化信息以及视觉版面信息。XPS Essentials Pack不仅简化了XPS文档的读取过程,还提供了将文件转换为XPS格式的功能。 ##...

    toXML:Excel到XML的转换-开源

    toXML是Windows应用程序,它使用户可以将Excel... 功能:1)支持不同版本的Excel文件2)支持无限的列和行3)可以通过更改一组规则来更改节点结构4)可以通过修改XML生成功能来生成新的XML 5)生成的XML符合XML 1.0标准

    XMLBean例子一则

    XMLBean是Apache软件基金会开发的一款Java库,它允许开发者通过简单的API来操作XML文档,将XML数据绑定到Java对象上,实现XML与Java对象之间的互相转换。这个例子展示了如何使用XMLBean来处理XML文档,创建、读取和...

    解析器:用纯POSIX shellscript编写的CSV,JSON,XML文本解析器和生成器

    本文将深入探讨一个特别的实现——使用纯POSIX Shell脚本编写的CSV、JSON、XML解析器和生成器。这样的工具具有轻量级、跨平台和易部署的优势,对于那些在Unix环境中工作且不希望依赖复杂语言的开发者来说,非常实用...

    android shell批量打包

    6. **打包APK**:使用`apkbuilder`或`apksigner`命令将编译好的类文件、资源文件和AndroidManifest.xml打包成APK。如果需要签名,这一步会包含签名过程。 7. **循环处理**:如果你有多个应用版本或不同配置,可以在...

Global site tag (gtag.js) - Google Analytics