coreutils: Which files are listed

 
 10.1.1 Which files are listed
 -----------------------------
 
 These options determine which files ‘ls’ lists information for.  By
 default, ‘ls’ lists files and the contents of any directories on the
 command line, except that in directories it ignores files whose names
 start with ‘.’.
 
 ‘-a’
 ‘--all’
      In directories, do not ignore file names that start with ‘.’.
 
 ‘-A’
 ‘--almost-all’
      In directories, do not ignore all file names that start with ‘.’;
      ignore only ‘.’ and ‘..’.  The ‘--all’ (‘-a’) option overrides this
      option.
 
 ‘-B’
 ‘--ignore-backups’
      In directories, ignore files that end with ‘~’.  This option is
      equivalent to ‘--ignore='*~' --ignore='.*~'’.
 
 ‘-d’
 ‘--directory’
      List just the names of directories, as with other types of files,
      rather than listing their contents.  Do 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.
 
 ‘-H’
 ‘--dereference-command-line’
      If a command line argument specifies a symbolic link, show
      information for the file the link references rather than for the
      link itself.
 
 ‘--dereference-command-line-symlink-to-dir’
      Do not dereference symbolic links, with one exception: if a command
      line argument specifies a symbolic link that refers to a directory,
      show information for that directory rather than for the link
      itself.  This is the default behavior when no other
      dereferencing-related option has been specified (‘--classify’
      (‘-F’), ‘--directory’ (‘-d’), (‘-l’), ‘--dereference’ (‘-L’), or
      ‘--dereference-command-line’ (‘-H’)).
 
 ‘--group-directories-first’
      Group all the directories before the files and then sort the
      directories and the files separately using the selected sort key
      (see –sort option).  That is, this option specifies a primary sort
      key, and the –sort option specifies a secondary key.  However, any
      use of ‘--sort=none’ (‘-U’) disables this option altogether.
 
 ‘--hide=PATTERN’
      In directories, ignore files whose names match the shell pattern
      PATTERN, unless the ‘--all’ (‘-a’) or ‘--almost-all’ (‘-A’) is also
      given.  This option acts like ‘--ignore=PATTERN’ except that it has
      no effect if ‘--all’ (‘-a’) or ‘--almost-all’ (‘-A’) is also given.
 
      This option can be useful in shell aliases.  For example, if ‘lx’
      is an alias for ‘ls --hide='*~'’ and ‘ly’ is an alias for ‘ls
      --ignore='*~'’, then the command ‘lx -A’ lists the file ‘README~’
      even though ‘ly -A’ would not.
 
 ‘-I PATTERN’
 ‘--ignore=PATTERN’
      In directories, ignore files whose names match the shell pattern
      (not regular expression) PATTERN.  As in the shell, an initial ‘.’
      in a file name does not match a wildcard at the start of PATTERN.
      Sometimes it is useful to give this option several times.  For
      example,
 
           $ ls --ignore='.??*' --ignore='.[^.]' --ignore='#*'
 
      The first option ignores names of length 3 or more that start with
      ‘.’, the second ignores all two-character names that start with ‘.’
      except ‘..’, and the third ignores names that start with ‘#’.
 
 ‘-L’
 ‘--dereference’
      When showing file information for a symbolic link, show information
      for the file the link references rather than the link itself.
      However, even with this option, ‘ls’ still prints the name of the
      link itself, not the name of the file that the link points to.
 
 ‘-R’
 ‘--recursive’
      List the contents of all directories recursively.