YAML 語法
來源:yaml
這個頁面提供一個正確的 YAML 語法的基本概述, 它被用來描述一個 playbooks(我們的配置管理語言).
我們使用 YAML 是因為它像 XML 或 JSON 是一種利於人們讀寫的數據格式. 此外在大多數變成語言中有使用 YAML 的庫.
Attention
幾個語法要點很簡單,然而沒有分號的語法需要注意縮進規則:同一層的變量要有相同的縮進,不然會將\t或\n當做字符串。注意空格。
基本的 YAML
所有的 YAML 文件開始行都應該是 ---
. 這是 YAML 格式的一部分, 表明一個文件的開始.
列表
列表中的所有成員都開始於相同的縮進級別, 並且使用一個 "- "
作為開頭(一個橫杠和一個空格):
---
# 一個美味水果的列表
- Apple
- Orange
- Strawberry
- Mango
注:列表對應java里的list。在使用snakeyaml解析的結果就是一個List.
字典
一個字典是由一個簡單的 鍵: 值
的形式組成(這個冒號后面必須是一個空格):
---
# 一位職工的記錄
name: Example Developer
job: Developer
skill: Elite
字典也可以使用縮進形式來表示, 如果你喜歡這樣的話:
---
# 一位職工的記錄
{name: Example Developer, job: Developer, skill: Elite}
你可以通過以下格式來指定一個布爾值(true/fase):
---
create_key: yes
needs_agent: no
knows_oop: True
likes_emacs: TRUE
uses_cvs: false
讓我們把目前所學到的 YAML 例子組合在一起:
---
# 一位職工記錄
name: Example Developer
job: Developer
skill: Elite
employed: True
foods:
- Apple
- Orange
- Strawberry
- Mango
languages:
ruby: Elite
python: Elite
dotnet: Lame
官方文檔:
http://www.yaml.org/spec/1.2/spec.html