slurp – Slurps a file from remote nodes


  • This module works like fetch. It is used for fetching a base64- encoded blob containing the data in a remote file.

  • This module is also supported for Windows targets.


Parameter Choices/Defaults Comments
path / required
The file on the remote system to fetch. This must be a file, not a directory.

aliases: path



  • This module returns an ‘in memory’ base64 encoded version of the file, take into account that this will require at least twice the RAM as the original file size.

  • This module is also supported for Windows targets.

See Also

See also

fetch – Fetch files from remote nodes

The official documentation on the fetch module.


- name: Find out what the remote machine's mounts are
    src: /proc/mounts
  register: mounts

- debug:
    msg: "{{ mounts['content'] | b64decode }}"

# From the commandline, find the pid of the remote machine's sshd
# $ ansible host -m slurp -a 'src=/var/run/'
# host | SUCCESS => {
#     "changed": false,
#     "content": "MjE3OQo=",
#     "encoding": "base64",
#     "source": "/var/run/"
# }
# $ echo MjE3OQo= | base64 -d
# 2179


Red Hat Support

More information about Red Hat’s support of this module is available from this Red Hat Knowledge Base article.


  • Ansible Core Team

  • Michael DeHaan (@mpdehaan)


If you notice any issues in this documentation, you can edit this document to improve it.