# need help on simple arrays

**URL:** <https://forum.ansible.com/t/need-help-on-simple-arrays/37103>\
**Category:** Ansible Project\
**Created:** [September 15, 2022, 5:48pm UTC](https://forum.ansible.com/t/need-help-on-simple-arrays/37103 "2022-09-15T17:48:14Z")\
**Posts on this page:** 5\
**Page:** 1

<div class="post-metadata">

**Author:** ![Ahmed\_Elhusseini](https://avatars.discourse-cdn.com/v4/letter/a/e0b2c6/32.png) [@Ahmed\_Elhusseini](https://forum.ansible.com/u/Ahmed_Elhusseini)\
**Post date:** [September 15, 2022, 5:48pm UTC](https://forum.ansible.com/t/need-help-on-simple-arrays/37103/1 "2022-09-15T17:48:14Z")

</div>

cat vars/users

users:

- username: test  
homedir: /home/test  
shell: /bin/bash
- username: test1  
homedir: /home/test1  
shell: /bin/bash
- username: test2  
homedir: /home/test2  
shell: /bin/bash

cat arrays.yaml

---

<div class="post-metadata">

**Author:** ![utoddl](https://sea1.discourse-cdn.com/ansible/user_avatar/forum.ansible.com/utoddl/32/249_2.png) [@utoddl](https://forum.ansible.com/u/utoddl)\
**Post date:** [September 15, 2022, 6:18pm UTC](https://forum.ansible.com/t/need-help-on-simple-arrays/37103/2 "2022-09-15T18:18:21Z")

</div>

Does this help?  
**$ cat arrays.yml**

---

<div class="post-metadata">

**Author:** ![Ahmed\_Elhusseini](https://avatars.discourse-cdn.com/v4/letter/a/e0b2c6/32.png) [@Ahmed\_Elhusseini](https://forum.ansible.com/u/Ahmed_Elhusseini)\
**Post date:** [September 17, 2022, 6:26pm UTC](https://forum.ansible.com/t/need-help-on-simple-arrays/37103/3 "2022-09-17T18:26:37Z")

</div>

yes, it does. Thank you.

but I have a question why I cannot use this:

---

<div class="post-metadata">

**Author:** ![utoddl](https://sea1.discourse-cdn.com/ansible/user_avatar/forum.ansible.com/utoddl/32/249_2.png) [@utoddl](https://forum.ansible.com/u/utoddl)\
**Post date:** [September 17, 2022, 8:36pm UTC](https://forum.ansible.com/t/need-help-on-simple-arrays/37103/4 "2022-09-17T20:36:18Z")

</div>

“users” is an array of three things. So you have to either iterate over the array as with something like “loop:”, or index it as with “users[0][‘username’]”, “users[0][‘homedirectory’]”, “users[0][‘shell’]”, or use some sort of filter that does the iteration for you and selects list items that match some criterion. For example:

```auto
**- name: Extract matches for 'test'**  **debug:**  **msg: "User {{ item.username }} has homedirectory {{ item.homedir }} and shell {{ item.shell }}"** **loop: "{{ users | selectattr('username', 'equalto', 'test') }}"**

```

produces this:

```auto
TASK [Extract matches for 'test'] ************************************************************************************************
ok: [localhost] => (item={'username': 'test', 'homedir': '/home/test', 'shell': '/bin/bash'}) => {
    "msg": " **User test has homedirectory /home/test and shell /bin/bash**"
}

```

---

<div class="post-metadata">

**Author:** ![Ahmed\_Elhusseini](https://avatars.discourse-cdn.com/v4/letter/a/e0b2c6/32.png) [@Ahmed\_Elhusseini](https://forum.ansible.com/u/Ahmed_Elhusseini)\
**Post date:** [September 20, 2022, 6:23pm UTC](https://forum.ansible.com/t/need-help-on-simple-arrays/37103/5 "2022-09-20T18:23:54Z")

</div>

Thank you so much, I appreciated
