问题标签 [xmllint]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
106 浏览

shell - 如何将 BPEL 变量放入 shell 变量中

BPEL 流程创建一个 xml 文档,一个具有 xml 结构的特定 XSD 文件,我想使用 xmllint 或 xmlstarlet 使用 unix shell 命令行命令解析该 BPEL 变量。这有可能吗?

我如何将 BPEL 变量放入 shell 变量中,以便能够使用 xmllint 解析它?

输入:

0 投票
1 回答
2115 浏览

xml - 从 xmllint/xpath 返回字符串

我有以下 xml 摘录,我想要的只是 Version 标记中的字符串 2014.4.0.0008 。

我已经尝试了一些事情并做到了这一点:

但似乎没有任何效果。这表示 XPath 集为空,如果我在 --xpath 参数中包含 string() 则它不会返回任何内容。

0 投票
2 回答
1505 浏览

xml - 在 Bash 脚本中转义单引号 xmllint xpath 查询

我正在尝试使用 bash 脚本中的 xmllint 从 xmltv 文档中查询信息,但我遇到了标题中包含单引号的程序标题的问题。例如:

XML 示例:

xmllint 行:

我已经尝试了几种选择来尝试逃避它,包括用双引号括起来和写 Tiger's 和 Tiger 's,但我尝试的任何方法似乎都没有帮助。

任何帮助表示赞赏。谢谢!

0 投票
2 回答
1246 浏览

xml - 使用 awk 和 xmllint 缩进类似 XML 的文件

我有一个包含大量配置数据的“类 XML”文件。我说“类似 XML”是因为它实际上就像 3 个 XML 文件连接在一起,用“]]>]]>”分隔

例如

我正在尝试编写一个脚本,该脚本将调用 xmllint 来缩进文件中的所有 XML 标记。但是,xmllint(和许多其他 xml 格式化程序)似乎要求文件中只有一个 XML 文档。例如,文件需要以“ <?xml version="1.0" encoding="UTF-8"?>”开头并且只包含一棵根树。

因此,我尝试编写一个 awk 脚本,将数据解析为单独的块并将其传递给 xmllint,但我遇到了一个无法通过的错误。我把脚本和输出放在下面。

如果我在两个单独的操作中执行此操作,一个是 awk 打印到三个临时文件,另一个是 xmllint 对这些文件进行操作,那么它可以工作。

例如

这会产生三个文件 Section_1.txt、Section_2.txt 和 Section_3.txt。Section_2.txt 的内容是:

我可以使用 xmllint 格式化该文件:

所以我不明白为什么我不能首先在 awk 脚本中将它通过管道传输到 xmllint 。

感谢您提供的任何帮助。

-乔恩

0 投票
3 回答
1460 浏览

utf-8 - xmllint:如何将 UTF-8 数字引用转换为字符

我想将 UTF-8 数字引用转换为 xmllint 输出中的字符。

重现:

我希望输出是:

我已经阅读了手册页并尝试了不同的选项,但没有任何效果。

如果可能的话,我想使用 xmllint 中的选项来实现这一点,或者如果使用 Linux 发行版中常见的另一个命令行工具无法做到这一点。

谢谢!

0 投票
2 回答
9730 浏览

xmllint - 强制 xmllint 忽略错误的默认 xmlns

我正在尝试使用xmllint --xpath. 经过反复试验,我发现由于这些文件中的默认命名空间声明错误,它无法按预期工作,如下所示:

一个简单的命令失败如下:

如果我去掉 xmlns 属性,替换根元素如下:

前面的命令给出了预期的输出:

更改数百个 pom 文件不是一种选择,尤其是因为 maven 本身不会抱怨。

有没有办法xmllint处理坏的文件xmlns

更新

感谢 Damien,我能够取得一些进展:

但这并不能完全满足我的需要。我的后续问题如下:

  1. 有没有办法只打印文本?我希望输出包含4.0.0在上面的示例中

  2. 似乎输出在大约 30 个字符后被截断。是否有可能获得完整的输出?这不会发生xmllint --xpath

0 投票
2 回答
11451 浏览

xml - 使用 xmllint 获取多个值

我想使用 xmllint 中的 xpath 来获取主机名和序列号。

这是XML

我可以获取主机名 blah* 的所有连续剧:

但我也想看看哪个主机名有那个序列号。那可能吗?

0 投票
1 回答
380 浏览

bash - 如何选择元素后面的文本?

我有以下xmllint示例选择一个元素:

粗体元素后面是我感兴趣的消息数量。当我使用parent轴时显示:

我认为following-sibling轴可能会给我这个数字,但它没有这样做:

0 投票
1 回答
1089 浏览

xml - xmllint 匹配并提取值

我只想从 xml 中提取“图像”,但由于前几个不包含“图像”,因此出现错误。

它如何跳过前两个并匹配第三个图像标签?

0 投票
2 回答
895 浏览

ios - xcode localization export xmllint faillure

I have a strange problem in my xcode project. When i want to import or export a localization xcode gives the following error message:

Some research tells me that status 1 means Unclassified but i cannot find what that means and where i should look for the answer.

I have tried to do this on 2 other macs but all show the same error. Somehow it looks like it cannot parse my project.

Can anyone point me in the right direction?