Ansible Cisco 输出创建空文件

Ansible Cisco output creating empty file

只有第一个命令的输出被写入文件。

如何让它将所有命令的输出写入文件?

---

- name: run show commands
  hosts: nexus1
  gather_facts: False


  tasks:
  - name: run show commands on nexus
    nxos_command:
      commands:
        - show hostname
        - show ip route
        - show interface
        - show ip interface vrf all 
        - show hsrp
    register: output

  - name: Copy to server
    copy:
      content: "{{ output.stdout[0] }}"
      dest: "/home/CiscoOutPut/{{ inventory_hostname }}.txt"

您只是询问 第一个命令的输出。 output.stdout 是一个列表,每条命令输出一项。当询问 [​​=12=] 时,您只询问第一个结果。

如果你想将所有命令的输出写入一个文件,那么像这样:

  - name: Copy to server
    copy:
      content: "{{ '\n'.join(output.stdout) }}"
      dest: "/home/CiscoOutPut/{{ inventory_hostname }}.txt"