bingmous

欢迎交流,不吝赐教~

导航

Yaml文件格式

介绍

YAML 是 "YAML Ain't Markup Language" 的递归缩写。在开发的这种语言时,YAML 的意思其实是:"Yet Another Markup Language"(仍是一种标记语言)

非常适合用来做以数据为中心的配置文件

官网:https://yaml.org/
github:https://github.com/yaml/www.yaml.org

基本语法

  • --- 表示文件的开始
  • key: value kv之间有空格
  • 大小写敏感
  • 使用缩进表示层级关系
  • 缩进不允许使用tab,只允许空格,一般使用两个空格。缩进的空格数不重要,只要相同层级的元素左对齐即可
  • # 表示注释
  • 字符串无需加引号,如果要加,''与""表示字符串内容,单引号表示raw,双引号会解释内容(比如\n,如果用双引号会输出换行,解释了其中的内容)

数据类型

  • 字面量:单个的、不可分割的值,date、boolean、string、number、null
  • 对象:键值对的集合,map、hash、set、object
k:      # 键值对
  k1: v1
  k2: v2
k2: {k1:v1,k2:v2} # 键值对的行内写法
  • 数组:一组按次序排列的值,array、list、queue
k:       # 数组
  - v1
  - v2
k2: [v1,v2]      # 数组的行内写法:

控制符“|” “>”

在内容有多行时使用|>用于替换每行的换行符为空格,+/-用于控制最后一行之后的换行符保留一个还是多个

|保留最后一行的一个换行符,|+保留最后一行之后的所有换行符,|-不保留最后一行之后的换行符

>将每一行最后的换行符替换为空格,保留最后一行的一个换行符,>+保留最后一行的所有换行符,>-不保留最后一行之后的换行符

其他用法

判断某个值是否存在,存在就使用,不存在使用默认值

person:
  name: zhangsan${random.uuid} # 返回一个uuid
  age: ${random.int} # 返回一个随机int
  birth: 2022-07-12
  hobby: hi-${persion.name:no} # 存在就使用,不存在使用默认值no

posted on 2021-05-08 14:15  Bingmous  阅读(63)  评论(0编辑  收藏  举报