ansible - 如何在ansible中的src中使用unix命令

标签 ansible

如果我从 shell 运行以下命令,文件就会打开:

ls -l/tmp/uname -n ---file1

我正在尝试使用 fetch 来运行它:

- name: COPY file from remote machine to local

  fetch:

    src: /tmp/`uname -n`---mem-swap.out

    dest: /tmp

但它给了我错误:

file not found: /tmp/uname -n---mem-swap.out

是否可以在“src”中执行

谢谢。

最佳答案

这是不可能的。如果您在本地系统上运行剧本,则查找会有所帮助,但不幸的是,查找不能在远程管理的节点上运行。

根据其他答案,您可以先运行一个任务。

但是如果您首先要收集事实,为什么不使用 Ansible 变量呢?

- name: COPY file from remote machine to local
  fetch:
    src: /tmp/{{ ansible_nodename }}---mem-swap.out
    dest: /tmp

关于ansible - 如何在ansible中的src中使用unix命令,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60289673/

相关文章:

ansible - 是否可以使用内联模板?

linux - ansible 将用户切换到 sudo 以外的用户

ansible - 我如何遍历字典列表及其内容列表

escaping - Ansible转义双引号和单引号

pip - 为什么 Ansible 不尊重我的系统代理设置?

docker - Ansible如何将本地镜像推送到私有(private)注册表

ansible - ansible 是否可以使用状态?

Ansible 如何使用用户输入将内容复制到文件

bash - Ansible GVM - Go 版本管理器

ansible - 使用ansible创建多个目录