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,oac_no_warn]
----
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,oac_no_warn]
----
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)]


