Show Ansible inventory information, by default it uses the inventory script JSON format


usage: ansible-inventory [-h] [--version] [-v] [-i INVENTORY] [-l SUBSET]
                      [--vault-id VAULT_IDS]
                      [-J | --vault-password-file VAULT_PASSWORD_FILES]
                      [--playbook-dir BASEDIR] [-e EXTRA_VARS] [--list]
                      [--host HOST] [--graph] [-y] [--toml] [--vars]
                      [--export] [--output OUTPUT_FILE]


used to display or dump the configured inventory as Ansible sees it

Common Options


When doing –list, represent in a way that is optimized for export,not as an accurate representation of how Ansible has processed it


create inventory graph, if supplying pattern it must be a valid group name. It will ignore limit

--host <HOST>

Output specific host info, works as inventory script. It will ignore limit


Output all hosts info, works as inventory script

--output <OUTPUT_FILE>

When doing –list, send the inventory to a file instead of to the screen

--playbook-dir <BASEDIR>

Since this tool does not use playbooks, use this as a substitute playbook directory. This sets the relative path for many features including roles/ group_vars/ etc.


Use TOML format instead of default JSON, ignored for –graph


Add vars to graph display, ignored unless used with –graph


the vault identity to use. This argument may be specified multiple times.

--vault-password-file, --vault-pass-file

vault password file


show program’s version number, config file location, configured module search path, module location, executable location and exit

-J, --ask-vault-password, --ask-vault-pass

ask for vault password

-e, --extra-vars

set additional variables as key=value or YAML/JSON, if filename prepend with @. This argument may be specified multiple times.

-h, --help

show this help message and exit

-i, --inventory, --inventory-file

specify inventory host path or comma separated host list. –inventory-file is deprecated. This argument may be specified multiple times.

-l <SUBSET>, --limit <SUBSET>

further limit selected hosts to an additional pattern

-v, --verbose

Causes Ansible to print more debug messages. Adding multiple -v will increase the verbosity, the builtin plugins currently evaluate up to -vvvvvv. A reasonable level to start is -vvv, connection debugging might require -vvvv. This argument may be specified multiple times.

-y, --yaml

Use YAML format instead of default JSON, ignored for –graph



The name of a group in the inventory, relevant when using –graph


The following environment variables may be specified.

ANSIBLE_INVENTORY – Override the default ansible inventory file

ANSIBLE_CONFIG – Override the default ansible config file

Many more are available for most options in ansible.cfg


/etc/ansible/hosts – Default inventory file

/etc/ansible/ansible.cfg – Config file, used if present

~/.ansible.cfg – User config file, overrides the default config if present


Ansible was originally written by Michael DeHaan.

See the AUTHORS file for a complete list of contributors.


Ansible is released under the terms of the GPLv3+ License.

See also

ansible(1), ansible-config(1), ansible-console(1), ansible-doc(1), ansible-galaxy(1), ansible-playbook(1), ansible-pull(1), ansible-vault(1)