# Find module with contains parameter not working

**URL:** <https://forum.ansible.com/t/find-module-with-contains-parameter-not-working/27592>\
**Category:** Ansible Project\
**Created:** [May 22, 2018, 12:19pm UTC](https://forum.ansible.com/t/find-module-with-contains-parameter-not-working/27592 "2018-05-22T12:19:51Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![Saranya\_N](https://avatars.discourse-cdn.com/v4/letter/s/898d66/32.png) [@Saranya\_N](https://forum.ansible.com/u/Saranya_N)\
**Post date:** [May 22, 2018, 12:19pm UTC](https://forum.ansible.com/t/find-module-with-contains-parameter-not-working/27592/1 "2018-05-22T12:19:51Z")

</div>

I want to list ONLY Filenames dev.xml and prd.xml that contain a word called “vob.fi.ted.com". Im able to list all filenames dev.xml and prd.xml using find module but when I use contains parameter in playbook it doesn’t return those files although they have the string in their contents.

- hosts: test

&nbsp;&nbsp;gather\_facts: false

&nbsp;&nbsp;become: yes

&nbsp;&nbsp;become\_user: root

&nbsp;&nbsp;tasks:

&nbsp;&nbsp;- name: Ansible find files examples

&nbsp;&nbsp;&nbsp;&nbsp;find:

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;paths: /opt/common

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;patterns: "dev.xml,prd.xml"

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;contains: "vob.fi.ted.com" -à This is not working

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;recurse: yes

&nbsp;&nbsp;&nbsp;&nbsp;register: files\_to\_find

&nbsp;&nbsp;- debug:

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;msg: "{{ files\_to\_find.files }}"

I get empty for list of files matched like below output.

However when I remove the contains: "vob.fi.ted.com" parameter , I get the list of matched files. All the files have 777 permission also.

OUTPUT

ok: [xxx.ted.com] =\> {

&nbsp;&nbsp;&nbsp;&nbsp;"changed": false,

&nbsp;&nbsp;&nbsp;&nbsp;"examined": 3408,

&nbsp;&nbsp;&nbsp;&nbsp;"files": , ===============è File list is empty

&nbsp;&nbsp;&nbsp;&nbsp;"invocation": {

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;"module\_args": {

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;"age": null,

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;"age\_stamp": "mtime",

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;"contains": "vob.fi.ted.com",

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;"file\_type": "file",

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;"follow": false,

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;"get\_checksum": false,

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;"hidden": false,

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;"paths": [

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;"/opt/common"

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;],

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;"patterns": [

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;"dev.xml",

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;“prd.xml”

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;],

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;"recurse": true,

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;"size": null,

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;"use\_regex": true

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}

&nbsp;&nbsp;&nbsp;&nbsp;},

&nbsp;&nbsp;&nbsp;&nbsp;"matched": 0,

&nbsp;&nbsp;&nbsp;&nbsp;"msg": ""

}

---

<div class="post-metadata">

**Author:** ![Saranya\_N](https://avatars.discourse-cdn.com/v4/letter/s/898d66/32.png) [@Saranya\_N](https://forum.ansible.com/u/Saranya_N)\
**Post date:** [May 22, 2018, 12:21pm UTC](https://forum.ansible.com/t/find-module-with-contains-parameter-not-working/27592/2 "2018-05-22T12:21:40Z")

</div>

I want to list ONLY Filenames dev.xml and prd.xml that contain a word called “vob.fi.ted.com". Im able to list all filenames dev.xml and prd.xml using find module but when I use contains parameter in playbook it doesn’t return those files although they have the string in their contents.

- hosts: test

&nbsp;&nbsp;gather\_facts: false

&nbsp;&nbsp;become: yes

&nbsp;&nbsp;become\_user: root

&nbsp;&nbsp;tasks:

&nbsp;&nbsp;- name: Ansible find files examples

&nbsp;&nbsp;&nbsp;&nbsp;find:

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;paths: /opt/common

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;patterns: "dev.xml,prd.xml"

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;contains: "vob.fi.ted.com"

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;recurse: yes

&nbsp;&nbsp;&nbsp;&nbsp;register: files\_to\_find

&nbsp;&nbsp;- debug:

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;msg: "{{ files\_to\_find.files }}"

I get empty for list of files matched like below output.

However when I remove the contains: "vob.fi.ted.com" parameter , I get the list of matched files. All the files have 777 permission also.

OUTPUT

ok: [xxx.ted.com] =\> {

&nbsp;&nbsp;&nbsp;&nbsp;"changed": false,

&nbsp;&nbsp;&nbsp;&nbsp;"examined": 3408,

&nbsp;&nbsp;&nbsp;&nbsp;"files": ,

&nbsp;&nbsp;&nbsp;&nbsp;"invocation": {

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;"module\_args": {

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;"age": null,

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;"age\_stamp": "mtime",

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;"contains": "vob.fi.ted.com",

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;"file\_type": "file",

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;"follow": false,

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;"get\_checksum": false,

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;"hidden": false,

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;"paths": [

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;"/opt/common"

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;],

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;"patterns": [

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;"dev.xml",

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;“prd.xml”

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;],

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;"recurse": true,

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;"size": null,

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;"use\_regex": true

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}

&nbsp;&nbsp;&nbsp;&nbsp;},

&nbsp;&nbsp;&nbsp;&nbsp;"matched": 0,

&nbsp;&nbsp;&nbsp;&nbsp;"msg": ""

}

---

<div class="post-metadata">

**Author:** ![Kai\_Stian\_Olstad](https://avatars.discourse-cdn.com/v4/letter/k/e19adc/32.png) [@Kai\_Stian\_Olstad](https://forum.ansible.com/u/Kai_Stian_Olstad)\
**Post date:** [May 22, 2018, 6:26pm UTC](https://forum.ansible.com/t/find-module-with-contains-parameter-not-working/27592/3 "2018-05-22T18:26:34Z")

</div>

contains is regex patterns, with this expression you would only find file that only contain that string and nothing more.

To make it find files containing that string you need to have a .\* on the start and at the end.  
. in regex means any character, since you mean literally . and not any character you need to escape the . with \

so you contains should be  
&nbsp;&nbsp;&nbsp;contains: .\*vob\.fi\.ted\.com.\*

---

<div class="post-metadata">

**Author:** ![Saranya\_N](https://avatars.discourse-cdn.com/v4/letter/s/898d66/32.png) [@Saranya\_N](https://forum.ansible.com/u/Saranya_N)\
**Post date:** [May 23, 2018, 5:29pm UTC](https://forum.ansible.com/t/find-module-with-contains-parameter-not-working/27592/4 "2018-05-23T17:29:24Z")

</div>

Thank you so much Kai , that worked .
