# Comandi ad hoc in Ansible Ansible consente l'esecuzione di comandi ad hoc tramite la riga di comando. Questi comandi sono impiegati principalmente per operazioni occasionali e non ripetitive, a differenza dei playbook. ## Sintassi di base La sintassi generale di un comando ad hoc è la seguente: ```bash ansible [pattern] -m [module] -a "[module options]" ``` Il *pattern* identifica i nodi target su cui eseguire il comando, mentre il modulo specificato determina il tipo di operazione da effettuare. Alcuni dei moduli più comunemente utilizzati includono `ping`, `setup`, `copy`, `shell`, `service`, e altri. Per eseguire un'operazione di *privilege escalation*, è necessario aggiungere l'opzione `-become`. Se non viene specificato alcun modulo, Ansible utilizza di default il modulo `command`. Questo modulo è simile al modulo shell, ma presenta alcune limitazioni: non consente l'uso del redirect o del piping. ## Esempi di utilizzo ```bash ansible db -m shell -a "uptime" ansible all -m user -a "name=testuser" --become ansible all -m copy -a "src=/path/to/file dest=/path/to/file" ```