使用 bash 脚本将 xml 标签添加/插入到现有的 xml 文件中

斯维塔·夏尔马

我有一个 XML 文件 abc.xml,我想使用 bash 脚本对其进行配置。例如,如果我有这个 abc.xml:

<a>

  <b>
    <bb>
        <yyy>
            Bla 
        </yyy>
    </bb>
  </b>

  <c>
    <cc>
      Something
    </cc>
  </c>

  <d>
    bla
  </d>
</a>

另一个 xyz.xml 文件

    <xxx>
        <yyy>
            <ggg>
                <hhh>true</hhh>
                <kkk>always</kkk>
                <mmm>warn</mmm>
            </ggg>
            <id>repo</id>
            <url>https://repository/repo-2.0/</url>
            <layout>default</layout>
        </yyy> 
    </xxx>

在 abc.xml 文件中的标记之后</b>和之前<c> 我需要在文件 xyz.xml 中插入所有标签。我是 shell 脚本的新手。有人可以帮忙吗?谢谢!

詹姆斯布朗

如果BlaSomething或其他标签等包括<c>

$ awk 'NR==FNR {                 # process xyz
    b=b (b==""?"":ORS) $0        # buffer its lines
    next
}
match($0,/ *<c>/) {              # look for <c>
    print substr($0,1,RSTART-1)  # print up to it
    print b                      # print buffer
    print substr($0,RSTART)      # print from tag on
    next 
}1' xyz abc

编辑:小 awk 入门:

这种情况下NR==FNR{...;next}块中处理第一个给定的文件xyzORS输出记录分隔符,即。默认为\n.

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

使用bash脚本将XML文件的内容添加到另一个文件中

将子元素插入到使用 Python ElementTree Generated XML 生成的现有 XML 中

使用 Ansible 将标签添加到现有的 XML 命名空间

使用bash脚本创建XML文件

如何将XElement插入现有的xml文件?

使用bash脚本从XML文件中删除一行

如何使用 bash 和 libreoffice calc headless 将几行数据插入到现有的 .odt 文件中?

使用Shell脚本将XML文件的标签存储在数组中

Bash将子节点插入XML文件

使用Shell脚本将值添加到XML文件中的属性

使用 Bash 从 XML 文件中删除文本

如何使用 poi 将外部页眉页脚文件(.xml 格式)添加到现有的 .docx 文档

使用bash脚本从xml文件获取特殊值

使用ElementTree将新的SubElement添加到现有XML文件中

在 JS 中将新的 XML 元素插入到现有的 XML 文档中

使用Python将XML文档插入现有XML

使用LINQ将XML数据插入现有XML

在现有的xml文件python中添加元素

使用Powershell脚本将命名空间添加到XML中的每个标签

使用XPath string()从bash脚本中的XML获取属性值

将XML文件放在Python脚本中?

使用R将节点插入XML文件中的特定节点

使用javascript将xml标签加载到html文件中

Powershell:将源自Web服务调用的XML插入到现有XML文档中

使用bash将XML转换为管道分隔文件

使用PHP填写现有的xml文件

需要能够使用 shell 脚本将字符串(路径)添加到 XML 文件

如何从XML文件中解析某些标签,并使用Bash将它们存储在数组中?

用于解析 XML 颜色文件的 Bash 脚本