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"
只有第一个命令的输出被写入文件。
如何让它将所有命令的输出写入文件?
---
- 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"