• yaml


    YAML 基础语法

    • 大小写敏感,

    • 字串不一定要用双引号标识,如果有空格或特殊字符,需要放在引号之中

    • 使用缩进表示层级关系

    • 缩进不允许使用Tab键,只允许使用空格

    • 缩进的空格数目不重要,只要相同层级的元素左侧对齐即可

    • # 表示注释,从这个字符一直到行尾,都会被解析器忽略。

    • 在一个文件中,可同时包含多个文档,并用“---”分隔(三个横线),用“...”可以用来表示档案结尾, 对于网络传输或者流来说,作为明确结束的符号,有利于软件处理。(例如不需要知道流关闭就能知道文档结束)

    YAML 数据结构

    YAML 支持的数据结构有三种

    • 对象:键值对的集合, 键值对用冒号 ":" 来分隔 ,冒号后面需有一个空格

    • 数组:数组对象通过减号 "-" 来表示 ,减号后需有一个空格

    • 纯量(scalars):单个的、不可再分的值,如字符串、数字、时间、日期、null(用~表示)

    注意点

    • 重复定义时,后定义的会覆盖前面定义的值

    • 如果值为 int, float, bool等类型,解析后会转换为对应的类型

    • 强制类型转换使用 两个!,如 !!str 12

    house: 
      family:
        name: doe
        parents: 
          - john
          - jane
        children:
          - pual
          - mark
          - simone
        address:
          number: 34
          street: main street
          city: nowhere
          zipcode: 12345
    
    num: 12.155
    flag: true
    who: ~
    s1: !!str 123
    s2: !!str true

    key:value放置于{}中进行表示,例如:

    address:
      {number: 34, street: main street, city: nowhere, zipcode: 12345}

    引用

    锚点&和别名*,可以用来引用。

    • &用来建立锚点,类似于声明变量

    • *用来引用锚点,类似于引用变量

    • <<表示合并到当前数据(如果变量名重复也会覆盖)

    defaults: &defaults
      adapter:  postgres
      host:     localhost
    
    #development:
    #  database: myapp_development
    #  adapter:  postgres
    #  host:     localhost
    development:
      database: myapp_development
      <<: *defaults
    
    test:
      database: myapp_test
      <<: *defaults
  • 相关阅读:
    LintCode Python 简单级题目 41.最大子数组
    helm深入学习
    kubernetes组件helm
    解压war包
    linux打开进程数测试
    docker使用centos7系统构建oraclejdk镜像
    docker使用centos7系统构建tomcat镜像
    docker使用alpine系统构建tomcat镜像
    docker制作共享jdk的tomcat镜像
    java cpu使用率高异常排查
  • 原文地址:https://www.cnblogs.com/yjh1995/p/13997037.html
Copyright © 2020-2023  润新知