ansible.builtin.lines lookup – read lines from command
Note
This lookup plugin is part of ansible-core
and included in all Ansible
installations. In most cases, you can use the short
plugin name
lines
.
However, we recommend you use the Fully Qualified Collection Name (FQCN) ansible.builtin.lines
for easy linking to the
plugin documentation and to avoid conflicting with other collections that may have
the same lookup plugin name.
Synopsis
Run one or more commands and split the output into lines, returning them as a list
Terms
Parameter |
Comments |
---|---|
command(s) to run |
Notes
Note
Like all lookups, this runs on the Ansible controller and is unaffected by other keywords such as ‘become’. If you need to use 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: We could read the file directly, but this shows output from command
ansible.builtin.debug: msg="{{ item }} is an output line from running cat on /etc/motd"
with_lines: cat /etc/motd
- name: More useful example of looping over a command result
ansible.builtin.shell: "/usr/bin/frobnicate {{ item }}"
with_lines:
- "/usr/bin/frobnications_per_host --param {{ inventory_hostname }}"
Return Value
Key |
Description |
---|---|
lines of stdout from command Returned: success |