ansible.builtin.tempfile 模块 – 创建临时文件和目录

注意

此模块是 ansible-core 的一部分,并包含在所有 Ansible 安装中。在大多数情况下,即使不指定collections 关键字,也可以使用短模块名称 tempfile。但是,我们建议您使用完全限定的集合名称 (FQCN) ansible.builtin.tempfile,以便轻松链接到模块文档并避免与其他可能具有相同模块名称的集合冲突。

概要

  • ansible.builtin.tempfile 模块创建临时文件和目录。mktemp 命令在不同的系统上采用不同的参数,此模块有助于避免与之相关的问题。模块创建的文件/目录只能由创建者访问。如果需要使其可全局访问,则需要使用 ansible.builtin.file 模块。

  • 对于 Windows 目标,请改用 ansible.windows.win_tempfile 模块。

参数

参数

注释

path

path

应创建临时文件或目录的位置。

如果未指定 path,则将使用系统默认的临时目录。

prefix

字符串

模块创建的文件/目录名称的前缀。

默认值: "ansible."

state

字符串

是否创建文件或目录。

选项

  • "directory"

  • "file" ← (默认)

suffix

字符串

模块创建的文件/目录名称的后缀。

默认值: ""

属性

属性

支持

描述

check_mode

支持:

可以在 check_mode 中运行并返回已更改的状态预测,而无需修改目标;如果不支持,则将跳过该操作。

diff_mode

支持:

当处于 diff 模式时,将返回有关已更改的内容(或可能需要在 check_mode 中更改的内容)的详细信息

platform

平台: posix

可以对其进行操作的目标操作系统/系列

另请参阅

另请参阅

ansible.builtin.file

管理文件和文件属性。

ansible.windows.win_tempfile

有关 ansible.windows.win_tempfile 模块的官方文档。

示例

- name: Create temporary build directory
  ansible.builtin.tempfile:
    state: directory
    suffix: build

- name: Create temporary file
  ansible.builtin.tempfile:
    state: file
    suffix: temp
  register: tempfile_1

- name: Create a temporary file with a specific prefix
  ansible.builtin.tempfile:
     state: file
     suffix: txt
     prefix: myfile_

- name: Use the registered var and the file module to remove the temporary file
  ansible.builtin.file:
    path: "{{ tempfile_1.path }}"
    state: absent
  when: tempfile_1.path is defined

返回值

常见返回值记录在此处,以下是此模块独有的字段

Key

描述

path

字符串

已创建文件或目录的路径。

已返回: success

示例: "/tmp/ansible.bMlvdk"

作者

  • Krzysztof Magosa (@krzysztof-magosa)