Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ ls(1) — GL2 W2.4

Media Vault

Software Library

Restoration Projects

Artifacts Sought

LS(1)  —  Silicon Graphics

NAME

ls − list contents of directory (enhanced Berkeley version)

SYNOPSIS

ls [ −1ACFHLRTabcdfgilmnoqrstux ] name ... 

DESCRIPTION

For each directory argument, ls lists the contents of the directory; for each file argument, ls repeats the file name(s) and any other information requested with the ls options.  The output is sorted alphabetically by default.  When no argument is given, the current directory is listed.  When several arguments are given, the arguments are first sorted appropriately, but file arguments appear before directories and their contents. 

There are three major listing formats.  The format chosen depends on whether the output is going to a terminal, and may also be controlled by option flags.  The default format for a terminal is to list the contents of directories in multi-column format, with the entries sorted down the columns.  (Files which are not the contents of a directory being interpreted are always sorted across the page rather than down the page in columns.  This is because the individual file names may be arbitrarily long.)  Files are listed first, and each directory being listed is labeled with its pathname, when two or more directory listings are requested.  If the standard output is not a terminal, the default format is to list one entry per line.  Finally, there is a stream output format in which files are listed across the page, separated by commas.  The −m flag enables this format. 

There are numerous options:

−l List in long format, giving mode, number of links, owner, group, size in bytes, and time of last modification for each file.  (See below.)  If the file is a special file, the size field will contain the major and minor device numbers. 

−t Sort by time modified (latest first) instead of by name. 

−a List all entries, except entries starting with a dot (.). 

−s Give size in kbytes (one kbytes equals 1024 bytes), not including indirect blocks, for each entry. 

−d If argument is a directory, list only its name, not its contents (usually used with −l to get status on directory). 

−L If the file is a symbolic link, list the file that the link references. 

−H If the file is a symbolic link, list the link itself. 

−r Reverse the order of sort to get reverse alphabetic or oldest first as appropriate. 

−u Use time of last access (use) instead of last modification for sorting (−t) or printing (−l). 

−c Use time of last status change for sorting (−t) or printing (−l) (see stat(2)).

−i Print i-number in first column of the report for each file listed. 

−f Force each argument to be interpreted as a directory and list the name found in each slot.  This option turns off −l, −t, −s, and −r, and turns on −a; the entries are printed in the order that they appear in the directory. 

−g Do not give owner ID in long listing. 

−o Do not give group ID in long listing

−m Force stream output format. 

−1 Force one entry per line output format, e.g., to a terminal. 

−C Force multi-column output, e.g., to a file or a pipe. 

−q Force printing of non-graphic characters in file names as the character ‘?’; this normally happens only if the output device is a terminal. 

−b Force printing of non-graphic characters to be in the ‘\ddd’ notation, in octal. 

−x Force columnar printing to be sorted across rather than down the page.  If the last character of the name the program is invoked with is an ‘x’ (for example, by linking /bin/ls to /bin/lx), this option is the default.

−F Cause directories to be marked with a trailing “/”, executable files to be marked with a trailing “∗”, symbolic links to be marked with a trailing “@”, and network symbolic links to be marked with a trailing “!”; If the last character of the name the program is invoked with is a ‘f’ (for example, by linking /bin/ls to /bin/lf), this option is the default.

−p Cause directories to be marked with a trailing ‘/’. 

−R Recursively list subdirectories encountered. 

−T Causes long listings to include seconds in the time. 

The mode printed under the −l (long) option contains eleven characters which are interpreted as follows:

The first character is:

d if the entry is a directory;

b if the entry is a block-type special file;

c if the entry is a character-type special file;

p if the entry is a named pipe;

l if the entry is a symbolic link;

− if the entry is a plain file. 

The next nine characters are interpreted as three sets of three bits each.  The first set refers to owner permissions; the next to permissions to others in the same user-group; and the last to all others.  Within each set the three characters indicate permission respectively to read, to write, or to execute the file as a program.  For a directory, “execute” permission is interpreted to mean permission to search the directory for a specified file.  The permissions are indicated as follows:

r if the file is readable;

w if the file is writable;

x if the file is executable;

− if the indicated permission is not granted. 

The group-execute permission character is given as s if the file has set-group-ID mode; likewise the user-execute permission character is given as s if the file has set-user-ID mode. 

The last character of the mode (normally ‘x’ or ‘−’) is t if the 1000 bit of the mode is on.  See chmod(1) for further information on file permissions and modes.

When the sizes of the files in a directory are listed, a total count of kbytes, not including indirect blocks is printed. 

The name of the file that a symbolic link points to is also listed (unless the −L flag is also given). 

EXAMPLE

ls lists the contents of the current directory in multi-column format. 

FILES

/etc/passwdto get user IDs for ls −l. 
/etc/groupto get group IDs for ls −l. 

Version 2.4  —  May 08, 1986

Typewritten Software • bear@typewritten.org • Edmonds, WA 98026