type=page
status=published
title=list-domains
next=list-file-groups.html
prev=list-custom-resources.html
~~~~~~
list-domains
============

[[list-domains-1]][[GSRFM00163]][[list-domains]]

list-domains
------------

lists the domains in the specified directory

[[sthref1462]]

Synopsis

[source,oac_no_warn]
----
asadmin [asadmin-options] list-domains [--help]
[--domaindir domaindir]
[--long={false|true}]
[--header={false|true}]
----

[[sthref1463]]

Description

The `list-domains` subcommand lists the domains in the specified domains
directory. If the domains directory is not specified, the domains in the
default directory are listed. If there is more that one domains
directory, the `--domaindir` option must be specified. The status of
each domain is included.

This subcommand is supported in local mode only.

[[sthref1464]]

Options

asadmin-options::
  Options for the `asadmin` utility. For information about these
  options, see the link:asadmin.html#asadmin-1m[`asadmin`(1M)] help page.
`--help`::
`-?`::
  Displays the help text for the subcommand.
`--domaindir`::
  The directory where the domains are to be listed. If specified, the
  path must be accessible in the files stem. If not specified, the
  domains in the domain root directory are listed. The default location
  of the domain root directory is as-install`/domains`.
`--long`::
`-l`::
  Displays detailed information about the administration servers in the
  listed domains, including host names and port numbers. The default
  value is `false`.
`--header`::
`-h`::
  Specifies whether a header is displayed when the `--long` option is
  used. The default value is `true`. To suppress the header, set the
  `--header` option to `false`.

[[sthref1465]]

Examples

[[GSRFM656]][[sthref1466]]

Example 1   Listing Domains

This example lists the domains in the default directory.

[source,oac_no_warn]
----
asadmin> list-domains
Name: domain1 Status: Running
Name: domain2 Status: Not running
Name: domain4 Status: Running, restart required to apply configuration changes
Command list-domains executed successfully
----

[[sthref1467]]

Exit Status

0::
  subcommand executed successfully
1::
  error in executing the subcommand

[[sthref1468]]

See Also

link:asadmin.html#asadmin-1m[`asadmin`(1M)]

link:create-domain.html#create-domain-1[`create-domain`(1)],
link:delete-domain.html#delete-domain-1[`delete-domain`(1)],
link:start-domain.html#start-domain-1[`start-domain`(1)],
link:stop-domain.html#stop-domain-1[`stop-domain`(1)],


