ansible blockinfile 禁用标记

Nik*_*Nik 15 ansible

我是ansible 的新手,但是我能够成功使用blockinfile函数。但是我不知道如何防止插入标记。我阅读了文档,但它似乎没有描述它。

这就是 blockinfile 写入的每个文件中显示的内容。

# BEGIN ANSIBLE MANAGED BLOCK
# END ANSIBLE MANAGED BLOCK
Run Code Online (Sandbox Code Playgroud)

udo*_*dan 16

标记实际上用于识别块。

这意味着如果您删除标记,blockinfile将不再能够识别块,这将导致模块在您每次运行任务时将该块添加到文件中。

所以写入块前后的标记是模块的要求,不能删除。

如果这是一个永远不会再次执行的一次性剧本,您可以lineinfilestate: absent之后使用该选项运行该模块。

  • 我更新了我的答案。gthe 模块本身实际上需要这些标记,即使可以,您也可能不想删除它们。有关详细信息,请参阅更新的答案。 (2认同)