dir_colors

dir_colors(5) File Formats Manual dir_colors(5)

NAME

   dir_colors - configuration file for dircolors(1)

DESCRIPTION

   The  program  ls(1)  uses the environment variable LS_COLORS to determine the colors in which the filenames are to be displayed.  This environment variable is usually set by a command
   like

          eval `dircolors some_path/dir_colors`

   found in a system default shell initialization file, like /etc/profile or /etc/csh.cshrc.  (See also dircolors(1).)  Usually, the file used here is /etc/DIR_COLORS and can be overrid
   den by a .dir_colors file in one's home directory.

   This configuration file consists of several statements, one per line.  Anything right of a hash mark (#) is treated as a comment, if the hash mark is at the beginning of a line or  is
   preceded by at least one whitespace.  Blank lines are ignored.

   The  global section of the file consists of any statement before the first TERM statement.  Any statement in the global section of the file is considered valid for all terminal types.
   Following the global section is one or more terminal-specific sections, preceded by one or more TERM statements which specify the terminal types (as  given  by  the  TERM  environment
   variable) the following declarations apply to.  It is always possible to override a global declaration by a subsequent terminal-specific one.

   The following statements are recognized; case is insignificant:

   TERM terminal-type
          Starts  a  terminal-specific  section  and  specifies which terminal it applies to.  Multiple TERM statements can be used to create a section which applies for several terminal
          types.

   COLOR yes|all|no|none|tty
          (Slackware only; ignored by GNU dircolors(1).)  Specifies that colorization should always be enabled (yes or all), never enabled (no or none), or enabled only if the output  is
          a terminal (tty).  The default is no.

   EIGHTBIT yes|no
          (Slackware  only;  ignored  by  GNU  dircolors(1).)  Specifies that eight-bit ISO/IEC 8859 characters should be enabled by default.  For compatibility reasons, this can also be
          specified as 1 for yes or 0 for no.  The default is no.

   OPTIONS options
          (Slackware only; ignored by GNU dircolors(1).)  Adds command-line options to the default ls command line.  The options can be any valid ls command-line options, and should  in
          clude the leading minus sign.  Note that dircolors does not verify the validity of these options.

   NORMAL color-sequence
          Specifies the color used for normal (nonfilename) text.

          Synonym: NORM.

   FILE color-sequence
          Specifies the color used for a regular file.

   DIR color-sequence
          Specifies the color used for directories.

   LINK color-sequence
          Specifies the color used for a symbolic link.

          Synonyms: LNK, SYMLINK.

   ORPHAN color-sequence
          Specifies the color used for an orphaned symbolic link (one which points to a nonexistent file).  If this is unspecified, ls will use the LINK color instead.

   MISSING color-sequence
          Specifies  the color used for a missing file (a nonexistent file which nevertheless has a symbolic link pointing to it).  If this is unspecified, ls will use the FILE color in
          stead.

   FIFO color-sequence
          Specifies the color used for a FIFO (named pipe).

          Synonym: PIPE.

   SOCK color-sequence
          Specifies the color used for a socket.

   DOOR color-sequence
          (Supported since fileutils 4.1) Specifies the color used for a door (Solaris 2.5 and later).

   BLK color-sequence
          Specifies the color used for a block device special file.

          Synonym: BLOCK.

   CHR color-sequence
          Specifies the color used for a character device special file.

          Synonym: CHAR.

   EXEC color-sequence
          Specifies the color used for a file with the executable attribute set.

   SUID color-sequence
          Specifies the color used for a file with the set-user-ID attribute set.

          Synonym: SETUID.

   SGID color-sequence
          Specifies the color used for a file with the set-group-ID attribute set.

          Synonym: SETGID.

   STICKY color-sequence
          Specifies the color used for a directory with the sticky attribute set.

   STICKY_OTHER_WRITABLE color-sequence
          Specifies the color used for an other-writable directory with the executable attribute set.

          Synonym: OWT.

   OTHER_WRITABLE color-sequence
          Specifies the color used for an other-writable directory without the executable attribute set.

          Synonym: OWR.

   LEFTCODE color-sequence
          Specifies the left code for non-ISO/IEC 6429 terminals (see below).

          Synonym: LEFT.

   RIGHTCODE color-sequence
          Specifies the right code for non-ISO/IEC 6429 terminals (see below).

          Synonym: RIGHT.

   ENDCODE color-sequence
          Specifies the end code for non-ISO/IEC 6429 terminals (see below).

          Synonym: END.

   *extension color-sequence
          Specifies the color used for any file that ends in extension.

   .extension color-sequence
          Same as *.extension.  Specifies the color used for any file that ends in .extension.  Note that the period is included in the extension, which makes it impossible to specify an
          extension not starting with a period, such as ~ for emacs backup files.  This form should be considered obsolete.

ISO/IEC 6429 (ANSI) color sequences

   Most color-capable ASCII terminals today use ISO/IEC 6429 (ANSI) color sequences, and many common terminals without color capability, including xterm and the widely  used  and  cloned
   DEC  VT100, will recognize ISO/IEC 6429 color codes and harmlessly eliminate them from the output or emulate them.  ls uses ISO/IEC 6429 codes by default, assuming colorization is en
   abled.

   ISO/IEC 6429 color sequences are composed of sequences of numbers separated by semicolons.  The most common codes are:
           0   to restore default color
           1   for brighter colors
           4   for underlined text
           5   for flashing text
          30   for black foreground
          31   for red foreground
          32   for green foreground
          33   for yellow (or brown) foreground
          34   for blue foreground
          35   for purple foreground
          36   for cyan foreground
          37   for white (or gray) foreground
          40   for black background
          41   for red background
          42   for green background
          43   for yellow (or brown) background
          44   for blue background
          45   for purple background
          46   for cyan background
          47   for white (or gray) background

   Not all commands will work on all systems or display devices.

   ls uses the following defaults:
   NORMAL    0           Normal (nonfilename) text
   FILE      0           Regular file
   DIR       32          Directory
   LINK      36          Symbolic link
   ORPHAN    undefined   Orphaned symbolic link
   MISSING   undefined   Missing file
   FIFO      31          Named pipe (FIFO)
   SOCK      33          Socket
   BLK       44;37       Block device
   CHR       44;37       Character device
   EXEC      35          Executable file

   A few terminal programs do not recognize the default properly.  If all text gets colorized after you do a directory listing, change the NORMAL and FILE codes to  the  numerical  codes
   for your normal foreground and background colors.

Other terminal types (advanced configuration)

   If  you  have a color-capable (or otherwise highlighting) terminal (or printer!) which uses a different set of codes, you can still generate a suitable setup.  To do so, you will have
   to use the LEFTCODE, RIGHTCODE, and ENDCODE definitions.

   When writing out a filename, ls generates the following output sequence: LEFTCODE typecode RIGHTCODE filename ENDCODE, where the typecode is the color sequence  that  depends  on  the
   type  or  name  of  file.   If  the ENDCODE is undefined, the sequence LEFTCODE NORMAL RIGHTCODE will be used instead.  The purpose of the left- and rightcodes is merely to reduce the
   amount of typing necessary (and to hide ugly escape codes away from the user).  If they are not appropriate for your terminal, you can eliminate them by specifying the respective key
   word on a line by itself.

   NOTE: If the ENDCODE is defined in the global section of the setup file, it cannot be undefined in a terminal-specific section of the file.  This means any NORMAL definition will have
   no effect.  A different ENDCODE can, however, be specified, which would have the same effect.

Escape sequences

   To specify control- or blank characters in the color sequences or filename extensions, either C-style \-escaped notation or stty-style ^-notation can be used.   The  C-style  notation
   includes the following characters:
          \a      Bell (ASCII 7)
          \b      Backspace (ASCII 8)
          \e      Escape (ASCII 27)
          \f      Form feed (ASCII 12)
          \n      Newline (ASCII 10)
          \r      Carriage Return (ASCII 13)
          \t      Tab (ASCII 9)
          \v      Vertical Tab (ASCII 11)
          \?      Delete (ASCII 127)
          \nnn    Any character (octal notation)
          \xnnn   Any character (hexadecimal notation)
          \_      Space
          \\      Backslash (\)
          \^      Caret (^)
          \#      Hash mark (#)

   Note that escapes are necessary to enter a space, backslash, caret, or any control character anywhere in the string, as well as a hash mark as the first character.

FILES

   /etc/DIR_COLORS
          System-wide configuration file.  (Slackware, SuSE and RedHat only; ignored by GNU dircolors(1) and thus Debian.)

   ~/.dir_colors
          (Slackware, SuSE and RedHat only; ignored by GNU dircolors(1) and thus Debian.)  Per-user configuration file.

   This page describes the dir_colors file format as used in the fileutils-4.1 package; other versions may differ slightly.

NOTES

   The default LEFTCODE and RIGHTCODE definitions, which are used by ISO/IEC 6429 terminals are:
          LEFTCODE    \e[
          RIGHTCODE   m

   The default ENDCODE is undefined.

SEE ALSO

   dircolors(1), ls(1), stty(1), xterm(1)

Linux man-pages 6.9.1 2024-06-16 dir_colors(5)