ls(1)									ls(1)



NAME

  ls - Lists and generates statistics for files

SYNOPSIS

  ls [-aAbcCdfFgilLmnopqrRstux1] [file ...  | directory ...]

  The ls command writes to standard output the contents of each specified
  directory or the name of each specified file, along with any other informa-
  tion you ask for with flags.	If you do not specify a file or a directory,
  ls displays the contents of the current directory.

FLAGS

  -a  Lists all entries in the directory, including the entries that begin
      with a . (dot). Entries that begin with a . are not displayed unless
      you refer to them specifically, or you specify the -a flag.

  -A  Lists all entries, except . (dot) and ..	(dot-dot). If you issue the
      ls command as the superuser, it behaves as if you specified this flag.

  -b  Displays nonprintable characters in octal notation.

  -c  Uses the time of last inode modification (file created, mode changed,
      and so on) for sorting when used with the -t flag.  Displays the time
      of last inode modification (instead of the time at which the file's
      contents were last modified) when used with the -l flag.	This flag has
      effect only when used with either -t or -l or both.

  -C  Sorts output vertically in a multicolumn format.	This is the default
      when output is to a terminal.

  -d  Displays only the information for the directory that is named, rather
      than for its contents.  This is useful with the -l flag to get the
      status of a directory.

  -f  Lists the name in each slot for each named directory.  This flag turns
      off -l, -t, -s, and -r, and turns on -a; this flag uses the order in
      which entries appear in the directory.

  -F  Puts a / (slash) after each filename if the file is a directory, an *
      (asterisk) after each filename if the file can be executed, an = (equal
      sign) after each filename if the file is a socket, and an @ (at sign)
      for a symbolic link, and a | (vertical bar) for a FIFO.

  -g  Displays the same information as -l, except for the owner.

  -i  Displays the i-number in the first column of the report for each file.

  -l  Displays the mode, number of links, owner, group, size (in bytes), and
      time of last modification for each file, and pathname.  If the file is
      a special file, the size field instead contains the major and minor
      device numbers.  If the file is a symbolic link, the pathname of the
      linked-to file is also printed preceded by ->.  The attributes of the
      symbolic link are displayed.  The -n flag overrides the -l flag.

  -L  Lists the file or directory the link references rather than the link
      itself, if the argument is a symbolic link.

  -m  Uses stream output format (a comma-separated series).

  -n  Displays the same information as -l, except that it displays the user
      and the group IDs instead of the usernames and group names.

  -o  Displays the same information as with -l, except for the group.  The -n
      flag overrides the -o flag.

  -p  Puts a slash after each filename if that file is a directory.

  -q  Displays nonprintable characters in filenames as a ? (question mark)
      character, if output is to a terminal (default).

  -r  Reverses the order of the sort, giving reverse collation or the oldest
      first, as appropriate.

  -R  Lists all subdirectories recursively.

  -s  Gives space used in n 512-byte units (including indirect blocks) for
      each entry.

  -t  Sorts by time of last modification (latest first) instead of by name.

  -u  Uses the time of the last access instead of time of the last modifica-
      tion for sorting (when used with -t) or for displaying (when used with
      -l).  This flag has no effect when not used with either -t or -l or
      both.

  -x  Sorts output horizontally in a multicolumn format.

  -1  Forces one entry per line output format; this is the default when out-
      put is not directed to a terminal.

  When you specify the following mutually exclusive flags, the last flag on
  the command line takes effect:

    +  -C and -l (ell)

    +  -C and -1 (one)

    +  -m and -l (ell)

    +  -x and -l (ell)

    +  -c and -u

DESCRIPTION

  By default, ls displays all information in collated order by filename.  The
  collating sequence is determined by the LC_COLLATE environment variable.

  There are three main ways to format the output:

    +  List entries in multiple columns by specifying either the -C or -x
       flags.  -C is the default format, when output is to a terminal.

    +  List one entry per line.

    +  List entries in a comma-separated series by specifying the -m flag.

  The ls command uses ioctl() to determine the number of byte positions in
  the output line.  If ls cannot get this information, it uses a default
  value of 80.	Note that columns may not be smaller than 20 bytes or larger
  than 400 bytes.

  Modes

  The mode displayed with the -l flag is interpreted by the first character,
  as follows:

  b   Block special file

  c   Character special file

  d   Directory

  l   Symbolic link

  p   First-In-First-Out (FIFO) special file

  s   Local socket

  -   Ordinary file

  Permissions

  The next nine characters are divided into three sets of three characters
  each.	 The first three characters show the owner's permission.  The next
  set of three characters show the permission of the other users in the
  group.  The last set of three characters show the permission of everyone
  else.	 The three characters in each set show read, write and execute per-
  mission of the file.	Execute permission of a directory lets you search a
  directory for a specified file.

  Permissions are indicated as follows:

  r   read

  w   write

  x   execute or search (directories)

  -   no access

  The group-execute permission character is s if the file has set-group-ID
  mode.	 The user-execute permission character is s if the file has set-
  user-ID mode.	 The last character of the mode (normally x or -) is t if the
  01000 (octal) bit of the mode is set; see the chmod command for the meaning
  of this mode.	 The indications of set-ID and the 01000 bit of the mode are
  capitalized (S and T, respectively) if the corresponding execute permission
  is not set.

  When the sizes of the files in a directory are listed, the ls command
  displays a total count in 512-byte units, including indirect blocks.

  The LC_TIME environment variable controls the format of the date and time.

  System V Compatibility

  The root of the directory tree that contains the commands modified for
  SVID-2 compliance is specified in the file /etc/svid2_path. You can use
  /etc/svid2_profile as the basis for, or to include in, your .profile.	 The
  file /etc/svid2_profile reads /etc/svid2_path and sets the first entries in
  the PATH environment variable so that the modified SVID-2 commands are
  found first.

  The SVID-2 compliant version of the ls command produces multi-column output
  only if the -C flag is specified.  In addition, the -s flag of the SVID-2
  compliant command causes file sizes to be reported in 512-byte units rather
  than in 1024-byte units.

EXAMPLES

   1.  To list all files in the current directory, enter:
	    ls	-a


       This lists all files, including . (dot), .. (dot-dot), and other files
       with names beginning with a dot.

   2.  To display detailed information, enter:
	    ls	-l  chap1  .profile


       This displays a long listing with detailed information about the files
       chap1 and .profile.

   3.  To display detailed information about a directory, enter:
	    ls	-d  -l	.  manual  manual/chap1


       This displays a long listing for the directories . and manual, and for
       the file manual/chap1.  Without the -d flag, this command lists the
       files in . and manual instead of providing detailed information about
       the directories themselves.

   4.  To list the files in the current directory in order of modification
       time, enter:
	    ls	-l  -t


       This displays a long listing of the files that were modified most
       recently, followed by the older files.

FILES

  /etc/passwd
	     Contains user information.

  /etc/group Contains group information.

RELATED INFORMATION

  Commands:  chmod(1), find(1), ln(1), stty(1).

  Functions:  ioctl(2).