Back to Contents
LS(1)                         User Commands                         LS(1)

NAME
       ls - list directory contents

SYNOPSIS
       ls [OPTION]... [FILE]...

DESCRIPTION
       List  information  about  the  FILEs  (the  current  directory  by
       default).  Sort entries alphabetically if none  of  -cftuvSUX  nor
       --sort is specified.

       Mandatory  arguments  to  long  options  are  mandatory  for short
       options too.

       -a, --all
              do not ignore entries starting with .

       -A, --almost-all
              do not list implied . and ..

       --author
              with -l, print the author of each file

       -b, --escape
              print C-style escapes for nongraphic characters

       --block-size=SIZE
              with -l, scale sizes by  SIZE  when  printing  them;  e.g.,
              '--block-size=M'; see SIZE format below

       -B, --ignore-backups
              do not list implied entries ending with ~

       -c     with  -lt: sort by, and show, ctime (time of last modifica‐
              tion of file status information); with -l: show  ctime  and
              sort by name; otherwise: sort by ctime, newest first

       -C     list entries by columns

       --color[=WHEN]
              colorize the output; WHEN can be 'always' (default if omit‐
              ted), 'auto', or 'never'; more info below

       -d, --directory
              list directories themselves, not their contents

       -D, --dired
              generate output designed for Emacs' dired mode

       -f     do not sort, enable -aU, disable -ls --color

       -F, --classify
              append indicator (one of */=>@|) to entries

       --file-type
              likewise, except do not append '*'

       --format=WORD
              across -x, commas -m, horizontal -x, long -l, single-column
              -1, verbose -l, vertical -C

       --full-time
              like -l --time-style=full-iso

       -g     like -l, but do not list owner

       --group-directories-first
              group directories before files;

              can  be  augmented  with  a  --sort  option, but any use of
              --sort=none (-U) disables grouping

       -G, --no-group
              in a long listing, don't print group names

       -h, --human-readable
              with -l and -s, print sizes like 1K 234M 2G etc.

       --si   likewise, but use powers of 1000 not 1024

       -H, --dereference-command-line
              follow symbolic links listed on the command line

       --dereference-command-line-symlink-to-dir
              follow each command line symbolic link

              that points to a directory

       --hide=PATTERN
              do not list implied entries matching shell  PATTERN  (over‐
              ridden by -a or -A)

       --hyperlink[=WHEN]
              hyperlink  file  names;  WHEN  can  be 'always' (default if
              omitted), 'auto', or 'never'

       --indicator-style=WORD
              append indicator with  style  WORD  to  entry  names:  none
              (default),  slash  (-p),  file-type (--file-type), classify
              (-F)

       -i, --inode
              print the index number of each file

       -I, --ignore=PATTERN
              do not list implied entries matching shell PATTERN

       -k, --kibibytes
              default to 1024-byte blocks for disk usage; used only  with
              -s and per directory totals

       -l     use a long listing format

       -L, --dereference
              when  showing  file  information  for a symbolic link, show
              information for the file the link  references  rather  than
              for the link itself

       -m     fill width with a comma separated list of entries

       -n, --numeric-uid-gid
              like -l, but list numeric user and group IDs

       -N, --literal
              print entry names without quoting

       -o     like -l, but do not list group information

       -p, --indicator-style=slash
              append / indicator to directories

       -q, --hide-control-chars
              print ? instead of nongraphic characters

       --show-control-chars
              show  nongraphic characters as-is (the default, unless pro‐
              gram is 'ls' and output is a terminal)

       -Q, --quote-name
              enclose entry names in double quotes

       --quoting-style=WORD
              use quoting style WORD for entry  names:  literal,  locale,
              shell,  shell-always, shell-escape, shell-escape-always, c,
              escape (overrides QUOTING_STYLE environment variable)

       -r, --reverse
              reverse order while sorting

       -R, --recursive
              list subdirectories recursively

       -s, --size
              print the allocated size of each file, in blocks

       -S     sort by file size, largest first

       --sort=WORD
              sort by WORD instead of name: none (-U),  size  (-S),  time
              (-t), version (-v), extension (-X)

       --time=WORD
              change the default of using modification times; access time
              (-u): atime, access, use; change time (-c): ctime,  status;
              birth time: birth, creation;

              with   -l,   WORD  determines  which  time  to  show;  with
              --sort=time, sort by WORD (newest first)

       --time-style=TIME_STYLE
              time/date format with -l; see TIME_STYLE below

       -t     sort by time, newest first; see --time

       -T, --tabsize=COLS
              assume tab stops at each COLS instead of 8

       -u     with -lt: sort by, and show, access  time;  with  -l:  show
              access  time  and  sort  by name; otherwise: sort by access
              time, newest first

       -U     do not sort; list entries in directory order

       -v     natural sort of (version) numbers within text

       -w, --width=COLS
              set output width to COLS.  0 means no limit

       -x     list entries by lines instead of by columns

       -X     sort alphabetically by entry extension

       -Z, --context
              print any security context of each file

       -1     list one file per line.  Avoid '\n' with -q or -b

       --help display this help and exit

       --version
              output version information and exit

       The SIZE argument is an integer and optional unit (example: 10K is
       10*1024).  Units are K,M,G,T,P,E,Z,Y (powers of 1024) or KB,MB,...
       (powers of 1000).  Binary prefixes can be used, too: KiB=K, MiB=M,
       and so on.

       The TIME_STYLE argument can be full-iso, long-iso, iso, locale, or
       +FORMAT.  FORMAT is interpreted like in  date(1).   If  FORMAT  is
       FORMAT1<newline>FORMAT2,  then FORMAT1 applies to non-recent files
       and FORMAT2 to recent files.  TIME_STYLE  prefixed  with  'posix-'
       takes  effect  only outside the POSIX locale.  Also the TIME_STYLE
       environment variable sets the default style to use.

       Using color to distinguish file types is disabled both by  default
       and  with  --color=never.  With --color=auto, ls emits color codes
       only when standard output is connected to a terminal.  The LS_COL‐
       ORS environment variable can change the settings.  Use the dircol‐
       ors command to set it.

   Exit status:
       0      if OK,

       1      if minor problems (e.g., cannot access subdirectory),

       2      if serious trouble (e.g., cannot access command-line  argu‐
              ment).

AUTHOR
       Written by Richard M. Stallman and David MacKenzie.

REPORTING BUGS
       GNU  coreutils  online  help:  <https://www.gnu.org/software/core‐
       utils/>
       Report   any   translation   bugs   to    <https://translationpro‐
       ject.org/team/>

COPYRIGHT
       Copyright  ©  2020 Free Software Foundation, Inc.  License GPLv3+:
       GNU GPL version 3 or later <https://gnu.org/licenses/gpl.html>.
       This is free software: you are free to change and redistribute it.
       There is NO WARRANTY, to the extent permitted by law.

SEE ALSO
       Full documentation <https://www.gnu.org/software/coreutils/ls>
       or available locally via: info '(coreutils) ls invocation'

GNU coreutils 8.32              April 2020                          LS(1)