运维开发网

ansible模块set_fact

运维开发网 https://www.qedev.com 2020-09-08 13:40 出处:51CTO 作者:菜机运维
set_fact定义变量可以在同一主机组中play相互引用,但是vars定义的变量,只能在单独的play使用示例:[[email protected]]#catset_fact.ymlhosts:PAremote_user:rootvars:================>如果在下个play中引用会报错var2:"Iatestvarforvars"tasks:set_fa

set_fact 定义变量可以在同一主机组中play相互引用,但是vars定义的变量,只能在单独的play使用

示例:

[[email protected] work]# cat set_fact.yml


  • hosts: PA

    remote_user: root

    vars: ================>如果在下个play中引用会报错

    var2: "I a test var for vars"

    tasks:

    • set_fact: ================>可以在同组中多个play引用

      var1: "I a test var for set_fact"

    • debug:

      msg: "{{var1}}++++{{var2}}"

    • name: shell return

      shell: "hostname"

      register: shell ================>注册shell输出结果为变量

    • set_fact:

      var3: "{{shell.end}}" ==========>引用shell的输出结果的end赋值给变量

    • debug:

      msg: "{{var3}}"

  • hosts: PA

    remote_user: root

    tasks:

    • debug:

      msg: "{{var1}}-----{{var3}}" =======>可以在这个play中调用set_fact定义的变量

扫码领视频副本.gif

0

精彩评论

暂无评论...
验证码 换一张
取 消

关注公众号