首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何在ansible中注册基于另一个变量的变量?

在Ansible中,可以使用register关键字将一个任务的输出结果保存到一个变量中。如果想要注册一个基于另一个变量的变量,可以使用set_fact模块。

下面是一个示例的Ansible Playbook,演示如何在Ansible中注册基于另一个变量的变量:

代码语言:txt
复制
- name: Register variable based on another variable
  hosts: localhost
  gather_facts: false
  vars:
    my_variable: "hello"
  tasks:
    - name: Set another variable based on my_variable
      set_fact:
        another_variable: "world {{ my_variable }}"
    - name: Print the registered variables
      debug:
        var:
          my_variable
          another_variable

在上面的示例中,我们定义了一个变量my_variable,并将其值设置为hello。然后,使用set_fact模块注册了一个新的变量another_variable,其值是基于my_variable的值拼接而成的字符串。最后,使用debug模块打印了这两个已注册的变量。

执行以上Playbook后,输出结果如下:

代码语言:txt
复制
TASK [Print the registered variables] **************************************************************************************************************************************************************************************
ok: [localhost] => {
    "my_variable": "hello",
    "another_variable": "world hello"
}

可以看到,my_variable的值为hello,而another_variable的值为world hello,其中hello是基于my_variable的值拼接而成的。

这是在Ansible中注册基于另一个变量的变量的一种常见方法。通过使用set_fact模块,可以根据需要动态地创建和注册变量,以便在后续的任务中使用。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

没有搜到相关的合辑

领券