type=page
status=published
title=list-network-listeners
next=list-nodes.html
prev=list-modules.html
~~~~~~

list-network-listeners
======================

[[list-network-listeners-1]][[GSRFM00186]][[list-network-listeners]]

list-network-listeners
----------------------

Lists the existing network listeners

[[sthref1692]]

=== Synopsis

[source]
----
asadmin [asadmin-options] list-network-listeners [--help]
[target]
----

[[sthref1693]]

=== Description

The `list-network-listeners` subcommand lists the existing network
listeners. This subcommand is supported in remote mode only.

[[sthref1694]]

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

[[sthref1695]]

=== Operands

target::
  Restricts the listing to network listeners for a specified target.
  Valid values are as follows:

  `server`;;
    Lists the network listeners for the default server instance. This is
    the default value.
  configuration-name;;
    Lists the network listeners for the specified configuration.
  cluster-name;;
    Lists the network listeners for all server instances in the
    specified cluster.
  instance-name;;
    Lists the network listeners for the specified server instance.

[[sthref1696]]

=== Examples

[[GSRFM686]][[sthref1697]]

==== Example 1   Listing Network Listeners

The following command lists all the network listeners for the server instance:

[source]
----
asadmin> list-network-listeners
admin-listener
http-listener-1
https-listener-2
Command list-network-listeners executed successfully.
----

[[sthref1698]]

=== Exit Status

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

[[sthref1699]]

=== See Also

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

link:create-network-listener.html#create-network-listener-1[`create-network-listener`(1)],
link:delete-network-listener.html#delete-network-listener-1[`delete-network-listener`(1)]


