---
name: "lxc-ls"
section: "1"
platform: "linux"
package: "lxc"
version: "1:7.0.0-2"
release: "Arch Linux 2026-11-01"
platforms: ["linux"]
url: "https://new.carta.tech/lxc-ls"
---

# lxc-ls(1)

list the containers existing on the system

## NAME

lxc-ls - list the containers existing on the system

## SYNOPSIS

**lxc-ls**  \[-1\] \[--active\] \[--frozen\] \[--running\] \[--stopped\] \[--defined\] \[-f\] \[-F *format*\] \[-g *groups*\] \[--nesting=*NUM*\] \[--filter=*regex*\]

## DESCRIPTION

**lxc-ls** list the containers existing on the system.

## OPTIONS

- FC**-1**F\[0\]

  Show one entry per line. (default when /dev/stdout isn't a tty)

- FC**--active**F\[0\]

  List only active containers (same as --frozen --running).

- FC**--frozen**F\[0\]

  List only frozen containers.

- FC**--running**F\[0\]

  List only running containers.

- FC**--stopped**F\[0\]

  List only stopped containers.

- FC**--defined**F\[0\]

  List only defined containers.

- FC**-f,--fancy**F\[0\]

  Use a fancy, column-based output.

- FC**-F,--fancy-format** F\[0\]*format*

  Comma separated list of columns to show in the fancy output. The list of accepted and default fields is listed in --help.

- FC**-g,--groups** F\[0\]*groups*

  Comma separated list of groups the container must have to be displayed. The parameter may be passed multiple times.

- FC**--nesting=**F\[0\]*NUM*

  Show nested containers. The number of nesting levels to be shown can be specified by passing a number as argument.

- FC**--filter=**F\[0\]*regex*

  The regular expression passed to **lxc-ls** will be applied to the container name. The format is a POSIX extended regular expression. It can also be given as additional argument without explicitly using FC**--filter**F\[0\].

## EXAMPLES

- lxc-ls --fancy

  list all the containers, listing one per line along with its name, state, ipv4 and ipv6 addresses.

- lxc-ls --active -1

  list active containers and display the list in one column.

## COMMON OPTIONS

These options are common to most of lxc commands.

- FC**-?, -h, --help**F\[0\]

  Print a longer usage message than normal.

- FC**--usage**F\[0\]

  Give the usage message

- FC**-q, --quiet**F\[0\]

  mute on

- FC**-P, --lxcpath=**F\[0\]*PATH*

  Use an alternate container path. The default is /var/lib/lxc.

- FC**-o, --logfile=**F\[0\]*FILE*

  Output to an alternate log *FILE*. The default is no log.

- FC**-l, --logpriority=**F\[0\]*LEVEL*

  Set log priority to *LEVEL*. The default log priority is FCERRORF\[0\]. Possible values are : FCFATALF\[0\], FCALERTF\[0\], FCCRITF\[0\], FCWARNF\[0\], FCERRORF\[0\], FCNOTICEF\[0\], FCINFOF\[0\], FCDEBUGF\[0\], FCTRACEF\[0\].

  Note that this option is setting the priority of the events log in the alternate log file. It do not have effect on the ERROR events log on stderr.

- FC**-n, --name=**F\[0\]*NAME*

  Use container identifier *NAME*. The container identifier format is an alphanumeric string.

- FC**--rcfile=**F\[0\]*FILE*

  Specify the configuration file to configure the virtualization and isolation functionalities for the container.

  This configuration file if present will be used even if there is already a configuration file present in the previously created container (via lxc-create).

- FC**--version**F\[0\]

  Show the version number.

## SEE ALSO

[**lxc**(7)](/lxc/7.md), [**lxc-create**(1)](/lxc-create/1.md), [**lxc-copy**(1)](/lxc-copy/1.md), [**lxc-destroy**(1)](/lxc-destroy/1.md), [**lxc-start**(1)](/lxc-start/1.md), [**lxc-stop**(1)](/lxc-stop/1.md), [**lxc-execute**(1)](/lxc-execute/1.md), [**lxc-console**(1)](/lxc-console/1.md), [**lxc-monitor**(1)](/lxc-monitor/1.md), [**lxc-wait**(1)](/lxc-wait/1.md), [**lxc-cgroup**(1)](/lxc-cgroup/1.md), [**lxc-ls**(1)](/lxc-ls/1.md), [**lxc-info**(1)](/lxc-info/1.md), [**lxc-freeze**(1)](/lxc-freeze/1.md), [**lxc-unfreeze**(1)](/lxc-unfreeze/1.md), [**lxc-attach**(1)](/lxc-attach/1.md), [**lxc.conf**(5)](/lxc.conf/5.md)

## HISTORY

Written originally as a shell script by Daniel Lezcano and Serge Hallyn. Later reimplemented and extended in Python by Stéphane Graber and then reimplemented and extended in C by Christian Brauner.
