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

[[list-file-groups-1]][[GSRFM00164]][[list-file-groups]]

list-file-groups
----------------

lists file groups

[[sthref1469]]

Synopsis

[source,oac_no_warn]
----
asadmin [asadmin-options] list-file-groups [--help] 
[--name username] [--authrealmname auth_realm_name] 
[--target target]
----

[[sthref1470]]

Description

The `list-file-groups` subcommand lists the file users and groups
supported by the file realm authentication. This subcommand lists
available groups in the file user. If the `--name` option is not
specified, all groups are listed.

This subcommand is supported in remote mode only.

[[sthref1471]]

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.
`--name`::
  Identifies the name of the file user for whom the groups will be
  listed.
`--authrealmname`::
  The name of the authentication realm for which to list available
  groups.
`--target`::
  This option specifies which configurations you can list. Valid targets
  are: +
  `server`;;
    Lists the file groups in the current server. This is the default
    value.
  cluster_name;;
    Lists the file groups in a cluster.
  instance_name;;
    Lists the file groups for a particular instance.

[[sthref1472]]

Examples

[[GSRFM657]][[sthref1473]]

Example 1   Listing Groups in all File Realms

This example list all file realm groups defined for the server.

[source,oac_no_warn]
----
asadmin> list-file-groups
staff
manager
Command list-file-groups executed successfully
----

[[sthref1474]]

Exit Status

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

[[sthref1475]]

See Also

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

link:create-file-user.html#create-file-user-1[`create-file-user`(1)],
link:delete-file-user.html#delete-file-user-1[`delete-file-user`(1)],
link:list-file-users.html#list-file-users-1[`list-file-users`(1)],
link:update-file-user.html#update-file-user-1[`update-file-user`(1)]


