YAML 序列2025年3月17日 | 阅读 3 分钟 在本节中,我们将讨论序列。序列也可以被称为列表、数组。 除了映射之外,YAML 也可以被认为是一个集合。在 YAML 中,集合用适当的序列样式表示。 示例 1 第一个示例展示了集合。它包含 roles 下的一个列表。 示例 2 datacenter 映射、location、cab 和 cab_unit 也是一个集合。因此,如果某些东西缩进,并且所有缩进都一起工作,这就被认为是一个单独的集合。所以,我们有一些术语定义了 YAML 中列表是如何工作的。 如果我们看到 YAML 中的列表,它们可能会与映射组合在一起。因此,我们将讨论**序列的映射**。如果在示例 2 的文件末尾提供 roles,然后在 roles 下以列表形式提供任何内容,则序列的映射才有效。这个过程被称为序列的映射。 示例 3 在上面的例子中,我们有 **roles**。现在假设 php-42 是一个 **webserver**,并且该 webserver 有 **wp_database**(Wordpress 数据库)。所以,我们这里有两个 roles,一个是 webserver,另一个是 wp_database。 如果我们有一个序列的映射,我们也会有一个**映射的序列**,甚至是一个**序列的序列**。因此,如果我们想看到映射的序列,我们将采用我们的 location、cab 和 cab_unit。我们不会在 location 之前开始两个空格,而是首先在 location 之前应用一个短划线和一个空格。与 key: value 对类似,空格不是可选的。所以,我们有短划线和空格,并且在它下面,我们有一个映射列表。还有其他提供序列的方式。 序列不能为空,也不能在没有映射的情况下嵌套。下面的例子展示了我们在 YAML 中不应该做什么 示例 4 上面的例子有一个 playbooks 列表。但是这个列表缺少冒号。冒号缺失了,这就是为什么我们无法运行这个 YAML 文件。我们也无法使用它,因为我们的第二个项目完全是空白的。如果我们想考虑第二个空白项,我们必须添加两个引号,如下所示 与映射类似,我们也可以提供序列的流式风格版本。因此,如果我们想将 roles 适配成流式风格,我们将使用方括号而不是花括号将它们括起来。我们必须在两个值之间提供一个逗号。我们还必须删除括号并将它们全部放在同一行上。因此,我们将示例 1 转换为流式风格,如下所示 在这个文件中,我们实际上只使用 YAML 的两个基本特性编写了一个非常典型的 YAML 文件:映射、序列以及映射和序列的组合。 下一个主题YAML 标量 |
我们请求您订阅我们的新闻通讯以获取最新更新。