Q: "Print just the path of a register variable."
A: The declaration below gives you what you want
my_dirs: "{{ folders_info.results|json_query('[].files[].path') }}"
Example
Given the tree for testing
shell> tree /tmp/test
/tmp/test
├── usr
│ └── bin
│ └── dosepsbin
└── var
├── db
├── lib
│ └── dkms
│ ├── test1
│ │ └── log
│ ├── test2
│ │ └── log
│ └── test3
│ └── log
├── local
└── log
15 directories, 0 files
The playbook
shell> cat pb.yml
- hosts: localhost
become: true
vars:
my_dirs: "{{ folders_info.results|json_query('[].files[].path') }}"
tasks:
- name: find directories
find:
paths: "{{ item }}"
recurse: true
file_type: directory
use_regex: true
patterns:
- '.*log.*'
- '.*sbin.*'
loop:
- /tmp/test/var
- /tmp/test/usr
register: folders_info
- debug:
var: my_dirs
gives
shell> ansible-playbook pb.yml
PLAY [localhost] ******************************************************************************************************************************************************************************
TASK [find directories] ***********************************************************************************************************************************************************************
ok: [localhost] => (item=/tmp/test/var)
ok: [localhost] => (item=/tmp/test/usr)
TASK [debug] **********************************************************************************************************************************************************************************
ok: [localhost] =>
my_dirs:
- /tmp/test/var/log
- /tmp/test/var/lib/dkms/test1/log
- /tmp/test/var/lib/dkms/test2/log
- /tmp/test/var/lib/dkms/test3/log
- /tmp/test/usr/bin/dosepsbin
PLAY RECAP ************************************************************************************************************************************************************************************
localhost: ok=2 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0