簡介
yaml 常用來配置項目,和 json 類似,稱作 json 的超集,特別適合描述數據結構,因此常用來作數據驅動或者配置文件
文件後綴爲.yml
基本規則
- 大小寫敏感
- 縮進來表示層級關係,但是不允許 tab 只許空格,且空格數不重要,相同層級需要對齊
#
用來註釋
數據類型
-
鍵值對
key1: value1 key2: value2
-
數組
- array1 key: [value1, value2] - value1 value2
-
純量
# 布爾,TRUE True true FALSE False false 都可以 boolean: true # 浮點型,支持科學計數法 float: 3.14 # 整型,支持二進制表示 int: 100 # 空 null: ~ # 字符串,對於被 yaml 識別的特殊字符可以使用單引號或者雙引號捕獲 String1: 你好 String2: '你好 世界' # 使用 > 可以讓文本換行表示空格,如果加 | 則表示保留了換行符 \n,|+ 表示保留最末尾的換行,|- 則表示刪除最末尾的換行 String3: > 你好 世界 # 日期,格式必須是 ISO 8601 格式,yyyy-MM-dd date: 2018-02-17 # 時間,格式必須是 ISO 8061 格式,yyyy-MM-dd 然後加上 T 連接上具體的時分秒信息,再通過 + 連接上時區 datetime: 2018-02-17T15:02:31+08:00
除此之外當然是支持複合結構的
錨點和引用
關鍵字就是&
和*
和<<
&
表示打上錨點,*
表示引用,類似 shell 中的$
,<<
表示合併到當前數據
var1: &var1
key1: value1
var2:
<<: *var1
key2: value2