pipe¶
Collection Note
This module is part of the ansible.builtin collection. To install the collection, use:
Added in version0.9.
Synopsis¶
- Run a command and return the output.
Parameters¶
| Parameter | Defaults / Choices | Comments |
|---|---|---|
| _terms required |
command(s) to run. |
Notes¶
Note
- The given command is passed to a shell for execution, therefore all variables that are part of the command and come from a remote/untrusted source MUST be sanitized using the P(ansible.builtin.quote#filter) filter to avoid shell injection vulnerabilities. See the example section.
- Like all lookups this runs on the Ansible controller and is unaffected by other keywords, such as become, so if you need to different permissions you must change the command or run Ansible as another user.
- Alternatively you can use a shell/command task that runs against localhost and registers the result.
- The directory of the play is used as the current working directory.
Examples¶
- name: raw result of running date command
ansible.builtin.debug:
msg: "{{ lookup('ansible.builtin.pipe', 'date') }}"
- name: Always use quote filter to make sure your variables are safe to use with shell
ansible.builtin.debug:
msg: "{{ lookup('ansible.builtin.pipe', 'getent passwd ' + myuser | quote ) }}"
Return Values¶
| Key | Data Type | Description | Returned |
|---|---|---|---|
| _string | list | stdout from command |
Authors¶
- Daniel Hokka Zakrisson (!unknown) Daniel@hozac.com