`
chinamming
  • 浏览: 151184 次
  • 性别: Icon_minigender_1
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

awk解析xml

 
阅读更多
复制代码
?xml version="1.0"?>
<system>
   <machine name="web01" >
         <server name="log_collect">
            <processes>1</processes>
            <threads>1</threads>
            <options>-t1 </options>
            <desc/>
         </server>
         <server name="dcs_fresh">
            <processes>1</processes>
            <threads>1</threads>
            <options>-a192.168.1.1</options>
            <desc/>
         </server>
   </machine>
   <machine name="web02">
         <server name="log_collect">
            <processes>2</processes>
            <threads>2</threads>
            <options>-t2 </options>
            <desc/>
         </server>
         <server name="dcs_fresh">
            <processes>2</processes>
            <threads>2</threads>
            <options>-a192.168.1.2</options>
            <desc/>
         </server>
   </machine>
复制代码
BEGIN{FS="[<>\"]"}
/machine name/{a=$3}
/server name/{b=$3}
/>.*</{c=c?c" "$3:$3}
/<\/server>/{print a" "b" "c;b=0;c=0}
[sunsweet@ubuntu:~/shell/monitor]>>awk -f xml.awk xml
web01 log_collect 1 1 -t1 
web01 dcs_fresh 1 1 -a192.168.1.1
web02 log_collect 2 2 -t2 
web02 dcs_fresh 2 2 -a192.168.1.2

分享到:
评论

相关推荐

    利用Shell解析处理XML的方法汇总

    3. 安全性:避免在解析XML时引入XSS(跨站脚本攻击)或其他安全风险,特别是在处理来自不可信源的数据时。 总结来说,Shell解析处理XML的方法虽不及Python或Ruby等脚本语言灵活,但对于简单的任务和快速原型开发,...

    shell 解析xml

    标题中的“shell 解析xml”指的是使用Shell脚本语言处理XML文件,这通常涉及到Linux或Unix环境下的命令行工具。XML(eXtensible Markup Language)是一种标记语言,广泛用于数据交换、配置文件等场景。在Shell环境中...

    sed_parse_xml

    5. **结合其他工具**:`sed`处理XML时可能力有未逮,这时可以与其他工具如`grep`、`awk`或XML解析器(如`xmlstarlet`、`xsltproc`等)结合使用,以增强处理能力。 6. **脚本编写**:复杂的XML处理可能需要编写`sed`...

    Effective AWK Programming:Awk 编程的经典著作

    - **第13章**:可能讨论的是AWK在特定领域的应用,如网络数据处理或文本解析。 - **第8、3、6、5、12章**:这些章节可能分别讲解AWK的基础语法、数组操作、控制流程、字符串处理以及文件处理等核心概念。 通过阅读...

    linux XML

    在Linux下,我们还可以使用`grep`、`sed`、`awk`等工具对XML文件进行搜索、替换等操作,尽管它们不是专为XML设计,但配合正则表达式,可以实现基本的XML处理。另外,`xmllint`是另一个常用的XML验证和格式化工具,它...

    TXT格式转xml格式(voc)

    6. 工具和库:Python的`xml.etree.ElementTree`库、Java的`javax.xml.transform`包、以及各种文本处理工具如awk、sed等,都可以用来实现TXT到XML的转换。 7. 注意事项:在转换过程中,要确保数据的一致性和完整性,...

    linux 下xml 使用方法的详解。

    1. **ElementTree**:用于解析、创建和修改XML文档,提供API操作XML元素树。 2. **lxml**:速度更快,功能更强大,支持XPath和XSLT。 七、XML与数据库 - **XML数据库**:专门存储和检索XML文档的数据库系统,如...

    文档解析自带工具

    此外,还有XML解析器如`xmlstarlet`,用于处理XML格式的文档;`pandoc`是一个强大的转换工具,能够将Markdown、HTML、LaTeX等多种格式互相转换。 对于C和C++程序员来说,库如`libxml2`提供了XML和HTML的解析功能,...

    bnf2xml:简单的BNF解析器使xml标记匹配-开源

    bnf2xml与任何文本二进制文件(即awk(1)grep(1))一样使用简单。 bnf2xml不需要C API,因为它输出简单的xml标签。 自述文件在文件dl页面上可见。 示例:$ echo“ hi” | bnf2xml模式文件H 一世或者碘化氢...

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

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

    笔试题 Linux、Oracle、XML、OOAD

    理解XML的解析、DOM(文档对象模型)和SAX(简单API for XML)解析方式以及XPath、XSLT等处理XML的技术是关键。 4. **OOAD(Object-Oriented Analysis and Design)**:面向对象分析与设计是软件工程中的一种方法论...

    xml-coreutils-开源

    2. **XML解析与处理**:这些工具能够解析XML文档,理解其结构,并允许用户通过XPath表达式来定位和操作特定的元素或属性。XPath是一种在XML文档中查找信息的语言,非常强大且灵活。 3. **命令行友好**:xml-...

    DeclarationTest.rar_xml/soap/webservice_Unix_Linux_

    例如,可以使用`grep`、`sed`、`awk`等工具来处理XML文件,或者使用XML解析库如libxml2进行更复杂的解析工作。测试在这种环境下的XML声明解析能力,是为了确保这些工具和库在遇到不同类型的XML声明时能正常工作。 ...

    Dubbo应用启动解析.doc

    3. **conf** 目录:存储配置文件,如dubbo.properties、application.xml等。 #### 三、启动脚本详解 启动脚本是一个bash脚本,负责自动化完成Dubbo应用的启动过程。下面对该脚本进行逐行分析: 1. **定位脚本路径...

    用于操作结构化文本数据的命令行工具列表___下载.zip

    结构化文本数据通常指的是遵循一定格式的数据,如CSV、JSON、XML等,这些格式便于计算机解析和处理。下面,我们将深入探讨一些常用的命令行工具,以及它们在处理结构化文本时的应用: 1. **awk**:awk 是一个强大的...

    parsiranje_teksta:任务 - 解析文本

    这些框架生成的日志文件有特定的格式,可以使用正则表达式或者其他解析工具(如grep,awk等)来提取关键信息。 在 NLP 应用中,Java 社区提供了许多库,如 Stanford CoreNLP 或 OpenNLP,它们提供了文本分词、词性...

    大数据技术之高频面试题8.0.8(1)(1).docx

    ### 大数据技术高频面试题解析 #### 一、Linux & Shell **1.1 Linux 常用高级命令** Linux环境下,掌握一系列高级命令对于高效管理与维护系统至关重要。 - **1.1.1 Linux常用高级命令** - `awk`: 用于强大的...

    Jakarta commons docs API CHM 格式

    jakarta-oro 一套文本处理工具,能提供perl5.0兼容的正则表达式,AWK-like正则表达式, glob表达式。还提供替换,分割,文件名过虑等功能 jakarta-regexp 是一个100%纯java正则式处理包,是Jonathan Locke捐给Apache...

    比较全面的:Jakarta-commons jar包(附: chm参考手册 & 资源简介)

    jakarta-oro 一套文本处理工具,能提供perl5.0兼容的正则表达式,AWK-like正则表达式, glob表达式。还提供替换,分割,文件名过虑等功能 jakarta-regexp 是一个100%纯java正则式处理包,是Jonathan Locke捐给Apache...

    基于Linux C、C++平台的网络爬虫的研究与实现

    可以使用开源库如libxml2或pugixml进行XML/HTML解析,或者使用正则表达式进行简单的匹配。 4. **网络I/O**:使用socket编程进行网络通信。C++的`&lt;sys/socket.h&gt;`库提供了接口,C语言中也有相应的函数如`socket()`, ...

Global site tag (gtag.js) - Google Analytics