Programación de Shell y automatización ansible
Los cuatro módulos anteriores pertenecen a la clase de comando.
Módulo de comando, que se puede ejecutar directamente con -a seguido del comando a ejecutar, pero la ejecución parcial no tendrá éxito si el comando tiene los siguientes caracteres "Entonces variables como $HOME y operaciones similares como " <", ">", "|", "&" y "&" no se ejecutarán. "&" y "&" no tendrán ningún efecto (use el módulo shell si necesita estas funciones).
El módulo shell se usa de manera similar al comando, pero ejecuta comandos a través del shell (/bin/sh), por lo que el módulo shell puede ejecutar cualquier comando como si se ejecutara localmente: "Es casi idéntico al módulo de comando Lo mismo, pero ejecuta el comando a través del shell (/bin/sh) en el nodo remoto ";
El módulo original se puede usar de la misma manera que el módulo shell, y También puede ejecutar cualquier comando como si se ejecutara localmente: "Ejecute comandos SSH sucios de bajo nivel, no a través del subsistema del módulo. Este módulo no admite controladores de cambios. Este módulo no requiere Python en el sistema remoto". /p>
El módulo de script se descarga desde el lado de administración en el host. La ejecución del shell en el host es similar al módulo original en que copia el shell al host remoto y luego lo ejecuta en el host remoto. "Este módulo no requiere Python en el sistema remoto, que es muy similar al módulo original.
Nota: el módulo sin formato se diferencia de los módulos de comando y shell en que no tiene el chdir, crea y elimina parámetros La función del parámetro chdir Es cambiar al directorio especificado por chdir antes de ejecutar los siguientes comandos. Este es un parámetro que aparecerá en muchos módulos posteriores.
El módulo de comando incluye. las siguientes opciones:
crea: archivo.nombre, cuando el archivo existe, el comando no se ejecutará
free_form: comando de Linux a ejecutar
chdir : Cambie al directorio especificado antes de ejecutar el comando
elimina: Nombre del archivo, cuando el archivo no existe, esta opción no se ejecutará
ejecutable: cambie el comando de ejecución del shell, el la ruta de ejecución debe ser una ruta absoluta