ls
ls [OPTION]... [FILE]...
List directory contents. Ignore files and directories starting with a ‘.’ by default
Options
--help-
Print help information.
--format-
Set the display format.
-C-
Display the files in columns.
--long,-l-
Display detailed information.
-x-
List entries in rows instead of in columns.
--tabsize=<COLS>,-T <COLS>-
Assume tab stops at each COLS instead of 8
-m-
List entries separated by commas.
--zero-
List entries separated by ASCII NUL characters.
--dired,-D-
generate output designed for Emacs’ dired (Directory Editor) mode
--hyperlink=<WHEN>-
hyperlink file names WHEN
-1-
List one file per line.
-o-
Long format without group information.
Identical to –format=long with –no-group. -g-
Long format without owner information.
--numeric-uid-gid,-n-
-l with numeric UIDs and GIDs.
--quoting-style-
Set quoting style.
--literal,-N-
Use literal quoting style. Equivalent to
--quoting-style=literal --escape,-b-
Use escape quoting style. Equivalent to
--quoting-style=escape --quote-name,-Q-
Use C quoting style. Equivalent to
--quoting-style=c --hide-control-chars,-q-
Replace control characters with ‘?’ if they are not escaped.
--show-control-chars-
Show control characters ‘as is’ if they are not escaped.
--time=<field>-
Show time in
<field>:
access time (-u): atime, access, use;
change time (-t): ctime, status.
modification time: mtime, modification.
birth time: birth, creation; -c-
If the long listing format (e.g., -l, -o) is being used, print the
status change time (the ‘ctime’ in the inode) instead of the modification
time. When explicitly sorting by time (–sort=time or -t) or when not
using a long listing format, sort according to the status change time. -u-
If the long listing format (e.g., -l, -o) is being used, print the
status access time instead of the modification time. When explicitly
sorting by time (–sort=time or -t) or when not using a long listing
format, sort according to the access time. --hide=<PATTERN>-
do not list implied entries matching shell PATTERN (overridden by -a or -A)
--ignore=<PATTERN>,-I <PATTERN>-
do not list implied entries matching shell PATTERN
--ignore-backups,-B-
Ignore entries which end with ~.
--sort=<field>-
Sort by
<field>: name, none (-U), time (-t), size (-S), extension (-X) or width -S-
Sort by file size, largest first.
-t-
Sort by modification time (the ‘mtime’ in the inode), newest first.
-v-
Natural sort of (version) numbers in the filenames.
-X-
Sort alphabetically by entry extension.
-U-
Do not sort; list the files in whatever order they are stored in the
directory. This is especially useful when listing very large directories,
since not doing any sorting can be noticeably faster. --dereference,-L-
When showing file information for a symbolic link, show information for the
file the link references rather than the link itself. --dereference-command-line-symlink-to-dir-
Do not follow symlinks except when they link to directories and are
given as command line arguments. --dereference-command-line,-H-
Do not follow symlinks except when given as command line arguments.
--no-group,-G-
Do not show group in long format.
--author-
Show author in long format. On the supported platforms,
the author always matches the file owner. --all,-a-
Do not ignore hidden files (files with names that start with ‘.’).
--almost-all,-A-
In a directory, do not ignore all file names that start with ‘.’,
only ignore ‘.’ and ‘..’. -f-
List all files in directory order, unsorted. Equivalent to -aU. Disables –color unless explicitly specified.
--directory,-d-
Only list the names of directories, rather than listing directory contents.
This will not follow symbolic links unless one of--dereference-command-line<br />(-H),--dereference (-L), or--dereference-command-line-symlink-to-diris
specified. --human-readable,-h-
Print human readable file sizes (e.g. 1K 234M 56G).
--kibibytes,-k-
default to 1024-byte blocks for file system usage; used only with -s and per
directory totals --si-
Print human readable file sizes using powers of 1000 instead of 1024.
--block-size=<BLOCK_SIZE>-
scale sizes by BLOCK_SIZE when printing them
--inode,-i-
print the index number of each file
--reverse,-r-
Reverse whatever the sorting method is e.g., list files in reverse
alphabetical order, youngest first, smallest first, or whatever. --recursive,-R-
List the contents of all directories recursively.
--width=<COLS>,-w <COLS>-
Assume that the terminal is COLS columns wide.
--size,-s-
print the allocated size of each file, in blocks
--color-
Color output based on file type.
--indicator-style-
Append indicator with style WORD to entry names:
none (default), slash (-p), file-type (–file-type), classify (-F) --classify=<when>,-F <when>-
Append a character to each file name indicating the file type. Also, for
regular files that are executable, append ‘*’. The file type indicators are
‘/’ for directories, ‘@’ for symbolic links, ‘|’ for FIFOs, ‘=’ for sockets,
‘>’ for doors, and nothing for regular files. when may be omitted, or one of:
none - Do not classify. This is the default.
auto - Only classify if standard output is a terminal.
always - Always classify.
Specifying –classify and no when is equivalent to –classify=always. This will
not follow symbolic links listed on the command line unless the
–dereference-command-line (-H), –dereference (-L), or
–dereference-command-line-symlink-to-dir options are specified. --file-type-
Same as –classify, but do not append ‘*’
-p-
Append / indicator to directories.
--time-style=<TIME_STYLE>-
time/date format with -l; see TIME_STYLE below
--full-time-
like -l –time-style=full-iso
--context,-Z-
print any security context of each file
--group-directories-first-
group directories before files; can be augmented with
a –sort option, but any use of –sort=none (-U) disables grouping
The TIME_STYLE argument can be full-iso, long-iso, iso, locale or +FORMAT. FORMAT is interpreted like in date. Also the TIME_STYLE environment variable sets the default style to use.
Examples
List files one per line:
ls -1
List all files, including hidden files:
ls {{[-a|--all]}}
List files with a trailing symbol to indicate file type (directory/, symbolic_link@, executable*, …):
ls {{[-F|--classify]}}
List all files in [l]ong format (permissions, ownership, size, and modification date):
ls {{[-la|-l --all]}}
List files in [l]ong format with size displayed using human-readable units (KiB, MiB, GiB):
ls {{[-lh|-l --human-readable]}}
List files in [l]ong format, sorted by [S]ize (descending) recursively:
ls {{[-lSR|-lS --recursive]}}
List files in [l]ong format, sorted by [t]ime the file was modified and in reverse order (oldest first):
ls {{[-ltr|-lt --reverse]}}
Only list directories:
ls {{[-d|--directory]}} */
The examples are provided by the tldr-pages project under the CC BY 4.0 License.
Please note that, as uutils is a work in progress, some examples might fail.