type=page
status=published
title=list-backups
next=list-batch-job-executions.html
prev=list-auth-realms.html
~~~~~~

= list-backups

[[list-backups-1]][[GSRFM00152]][[list-backups]]

== list-backups

Lists all backups

[[sthref1332]]

=== Synopsis

[source]
----
asadmin [asadmin-options] list-backups [--help]
[--long[={false|true}]]
[--domaindir domain-root-dir]
[--backupdir backup-directory]
[--backupconfig backup-config-name]
[domain-name]
----

[[sthref1333]]

=== Description

The `list-backups` subcommand displays information about domain backups.

This subcommand is supported in local mode only in {productName}, and is support in local mode and remote mode in {productName}.

[[sthref1334]]

=== 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.
`--long`::
`-l`::
  Displays detailed information about each backup. +
  The default value is `false`.
`--domaindir`::
  Specifies the domain root directory, the parent directory of the
  domain upon which the command will operate. +
  The default value is as-install``/domains``.
`--backupdir`::
  Specifies the directory under which backup files are stored. +
  The default value is as-install``/domains/``domain-dir``/backups``. If the
  domain is not in the default location, the location is
  domain-dir``/backups``.
`--backupconfig`::
  (Supported only in {productName}.) Restricts the listing of
  backup files in the backup directory to those for the specified domain
  backup configuration.

[[sthref1335]]

=== Operands

domain-name::
  Specifies the domain for which backups are listed. +
  This operand is optional if only one domain exists in the
  {productName} installation.

[[sthref1336]]

=== Examples

[[GSRFM640]][[sthref1337]]

==== Example 1   Listing Domain Backups

This example provides detailed information about backups in the default domain.

[source]
----
asadmin> list-backups --long

Description               : domain1 backup created on 2021_12_20 by user dmatej
GlassFish Version         : Eclipse GlassFish  7.0.0  (build 2021-12-10T19:08:14+0100)
Backup User               : admin
Backup Date               : Mon Dec 20 19:24:17 CET 2021
Domain Name               : domain1
Backup Type               : full
Backup Config Name        :
Backup Filename (origin)  : /glassfish7/glassfish/domains/domain1/backups/domain1_2021_12_20_v00001.zip
Domain Directory          : /glassfish7/glassfish/domains/domain1

Description               : domain1 backup created on 2021_12_20 by user dmatej
GlassFish Version         : Eclipse GlassFish  7.0.0  (build 2021-12-10T19:08:14+0100)
Backup User               : admin
Backup Date               : Mon Dec 20 19:24:20 CET 2021
Domain Name               : domain1
Backup Type               : full
Backup Config Name        :
Backup Filename (origin)  : /glassfish7/glassfish/domains/domain1/backups/domain1_2021_12_20_v00002.zip
Domain Directory          : /glassfish7/glassfish/domains/domain1


Command list-backups executed successfully.
----

[[sthref1338]]

=== Exit Status

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

[[sthref1339]]

=== See Also

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

link:backup-domain.html#backup-domain-1[`backup-domain`(1)],
link:restore-domain.html#restore-domain-1[`restore-domain`(1)]


