LS(1) GENIX Programmer's Manual LS(1)
NAME
ls - list contents of directory
SYNOPSIS
ls [ -abcdfgilmqrstux1CFR ] name ...
l [ ls options ] name ...
DESCRIPTION
For each directory argument, ls lists the contents of the directory;
for each file argument, ls repeats its name and any other informa-
tion requested. 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 teletype, and may also be con-
trolled by option flags. The default format for a teletype 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 indivi-
dual file names may be arbitrarily long.) If the standard output is
not a teletype, 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 `,' characters. The -m flag enables
this format; when invoked as l this format is also used.
There are an unbelievable number of options:
-l List in long format, giving mode, number of links, owner, size
in bytes, and time of last modification for each file. (See
below.) If the file is a special file the size field will
instead contain the major and minor device numbers.
-t Sort by time modified (latest first) instead of by name, as is
normal.
-a List all entries; usually `.' and `..' are suppressed.
-s Give size in blocks, including indirect blocks, for each entry.
-d If argument is a directory, list only its name, not its con-
tents (mostly used with -l to get status on directory).
-r Reverse the order of sort to get reverse alphabetic or oldest
first as appropriate.
-u Use time of last access instead of last modification for sort-
ing (-t) or printing (-l).
Printed 11/16/83 1
LS(1) GENIX Programmer's Manual LS(1)
-c Use time of file creation for sorting or printing.
-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 order is the order in which
entries appear in the directory.
-g Give group ID instead of owner ID in long listing.
-m force stream output format
-1 force one entry per line output format, e.g. to a teletype
-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 teletype
-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; this is the default if the last character of the name
the program is invoked with is an `x'.
-F cause directories to be marked with a trailing `/' and execut-
able files to be marked with a trailing `*'; this is the
default if the last character of the name the program is
invoked with is a `f'.
-R recursively list subdirectories encountered.
The mode printed under the -l option contains 11 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;
m if the entry is a multiplexor-type character special file;
- if the entry is a plain file.
The next 9 characters are interpreted as three sets of three bits
each. The first set refers to owner permissions; the next to per-
missions to others in the same user-group; and the last to all oth-
ers. 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 permis-
sion to search the directory for a specified file. The permissions
Printed 11/16/83 2
LS(1) GENIX Programmer's Manual LS(1)
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 the meaning of this
mode.
When the sizes of the files in a directory are listed, a total count
of blocks, including indirect blocks is printed.
FILES
/etc/passwd to get user ID's for `ls -l'.
/etc/group to get group ID's for `ls -g'.
BUGS
Newline and tab are considered printing characters in file names.
The output device is assumed to be 80 columns wide.
The option setting based on whether the output is a teletype is
undesirable as ``ls -s'' is much different than ``ls -s | lpr''. On
the other hand, not doing this setting would make old shell scripts
which used ls almost certain losers.
Column widths choices are poor for terminals which can tab.
Printed 11/16/83 3