ansible-inventory - Man Page


Examples (TL;DR)


usage: ansible-inventory [-h] [--version] [-v] [-i INVENTORY] [-l SUBSET]

[--vault-id VAULT_IDS] [--ask-vault-password | --vault-password-file VAULT_PASSWORD_FILES] [--playbook-dir BASEDIR] [-e EXTRA_VARS] [--list] [--host HOST] [--graph] [-y] [--toml] [--vars] [--export] [--output OUTPUT_FILE] [host|group]


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

Common Options


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

ask for vault password


When doing an --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

--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

-e,  --extra-vars

set additional variables as key=value or YAML/JSON, if filename prepend with @

-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

-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.

-y,  --yaml

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


The following environment variables may be specified.

ANSIBLE_CONFIG -- Specify override location for the ansible config file

Many more are available for most options in ansible.cfg

For a full list check or use the ansible-config command.


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

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

./ansible.cfg -- Local config file (in current working directory) assumed to be 'project specific' and overrides the rest if present.

As mentioned above, the ANSIBLE_CONFIG environment variable will override all others.


Ansible was originally written by Michael DeHaan.

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)

Extensive documentation is available in the documentation site: <>. IRC and mailing list info can be found in file, available in: <>


Ansible 2.15.0 System administration commands