使用Ansible在目标服务器上创建文件

使用Ansible在目标服务器上创建文件,ansible,Ansible,我正在尝试使用Ansible在目标服务器上创建一个文件 我想从目标服务器上的env变量获取路径 代码是: - name: Create a file win_file: path: ansible_env.CONFIG_HOME\conf\xyz.txt state: file 我收到的错误是: “更改”:错误 “msg”:“不会创建路径ansible_env.CONFIG_HOME\conf\xyz.txt” 这里有两个问题 首先,由于您试图使用环境变量,因此需要大括

我正在尝试使用Ansible在目标服务器上创建一个文件

我想从目标服务器上的env变量获取路径

代码是:

- name: Create a file 
  win_file: 
    path: ansible_env.CONFIG_HOME\conf\xyz.txt
    state: file
我收到的错误是:

“更改”:错误

“msg”:“不会创建路径ansible_env.CONFIG_HOME\conf\xyz.txt”


这里有两个问题

首先,由于您试图使用环境变量,因此需要大括号
{{}}
来插值该值

其次,仔细阅读for
win_文件
,其中讨论了
状态
的行为方式:

如果
文件
,如果文件不存在,则不会创建该文件

如果触摸,如果路径不存在,将创建一个空文件

考虑到上述情况,以下内容应适用于您:

- name: Create a file 
  win_file: 
    path: "{{ ansible_env.CONFIG_HOME }}\conf\xyz.txt"
    state: touch