ansible查找管道这个管道是什么意思?

时间:2016-09-18 05:00:10

标签: ansible

在ansible,我可以使用类似的东西:

debug:var="{{lookup('pipe', 'date +%Y%m%d')}}"

这可以起作用,但是'管道是什么?意思?在ansible文档中找不到任何详细解释,想要了解当这个语句运行时会发生什么。

例如,' date'意味着运行日期'来自shell的命令?然后使用类似管道的方式以指定的方式格式化日期?

1 个答案:

答案 0 :(得分:10)

pipe是一个ansible查找插件,它将计算您在查找的第二个参数中指定的shell命令的输出,并将其传递到查找的左侧。您可以在那里指定任何shell命令。

因此,在您的示例中,shell命令date +%Y%m%d的输出应该是管道调试模块,var应该设置为此输出值。

我通常使用pipe查找为时间戳设置一个事实,这样我就可以在最后为任何资源名称的变量中添加时间戳,如下所示:

- set_fact: timestamp="{{ lookup('pipe', 'date +%Y%m%d%H%M%S') }}"

关于Lookups的官方文档,以及包含pipe的具体示例。