Pero, suponga que desea imprimir la salida del comando del comando que se ejecuta en el objetivo remoto. ¿Cómo te va?? En este tutorial, aprenderá cómo imprimir la salida de comando en Ansible.
Requisitos previos
Antes de comenzar, asegúrese de tener Ansible instalado en su sistema Linux. En esta guía, estamos ejecutando Ubuntu 20.04 en el que se instaló Ansible. Consulte nuestra guía sobre cómo instalar Ansible en Ubuntu 20.04.
Salida del comando de impresión en Ansible
Tome un archivo de libro de jugadas simple que enumera el directorio de inicio del host administrado o el host remoto.
---
- Anfitriones: puesta en escena
Nombre: Enumere el contenido del directorio de inicio
tareas:
- Nombre: Lista de archivos y carpeta en el directorio de inicio
Shell: 'ls -l'
El libro de jugadas funcionará bien; Sin embargo, la salida no se mostrará en el terminal. Todo lo que está registrado es la naturaleza de la actividad que ocurre en el host administrado.
Cuando se ejecuta un archivo de libro de jugadas, cada tarea guarda su salida en una variable. Para capturar la salida, debe especificar su propia variable en la que se guardará la salida. Para lograr esto, usamos el 'registro' parámetro para registrar la salida a una variable. Luego usa el 'depurar' módulo para mostrar el contenido de la variable a estándar.
Para demostrar esto, usemos algunos ejemplos.
Ejemplo 1: Imprima la salida del comando de los archivos de listado en el directorio de inicio
Anteriormente, proporcionamos un ejemplo de un archivo de libro de jugadas que enumera el contenido del directorio de inicio de un host administrado. Sin embargo, como descubrimos, la salida no se imprime para salir estándar.
Usaremos el parámetro 'Registro' para registrar los resultados en una variable llamada Command_output para resolver este problema. Luego, imprimiremos la salida usando el 'depurar' módulo.
Aquí está el archivo completo del libro de jugadas.
---
- Anfitriones: puesta en escena
Nombre: Enumere el contenido del directorio de inicio
tareas:
- Nombre: Lista de archivos y carpeta en el directorio de inicio
Shell: 'ls -l'
Registrar: command_output
- depurar:
var: command_output.stdout_lines
Cuando se ejecuta el archivo del libro de jugadas, la salida del contenido del directorio de inicio se imprime a estándar.
$ Ansible-playbook/etc/ansible/list_contents.YML
Ejemplo 2: Imprima la salida del comando del comando de tiempo de actividad
Tomemos otro escenario en el que estemos imprimiendo la salida de 'tiempo de actividad'Comando en el shell del host administrado. Como puede saber, el comando de tiempo de actividad imprime detalles, como cuánto tiempo se ha ejecutado el sistema desde que se encendió, inició sesión en los usuarios y cargó promedio.
Creamos un archivo de libro de jugadas llamado check_uptime.YML, como se muestra.
---
- Anfitriones: puesta en escena
Nombre: tiempo de excursión del host remoto
tareas:
- Nombre: Crunción de tiempo de arriba del servidor Ubuntu remoto
Shell: tiempo de actividad
Registrar: command_output
- depurar:
var: command_output.stdout_lines
Cuando se ejecuta, los detalles del tiempo de actividad se imprimen en el terminal como se muestra.
$ Ansible-playbook/etc/ansible/check_uptime.YML
Conclusión
Esta guía demuestra cómo puede imprimir la salida del comando para salir estándar en ansible. Esto fue esclarecedor y que ahora puede imprimir la salida de su comando para salir.