put -f flag back in; it only stops sorting now
[unix-history] / usr / src / bin / ls / ls.1
CommitLineData
a10206cc
KM
1.\" Copyright (c) 1980 Regents of the University of California.
2.\" All rights reserved. The Berkeley software License Agreement
3.\" specifies the terms and conditions for redistribution.
4.\"
9d5fbfa8 5.\" @(#)ls.1 6.11 (Berkeley) %G%
a10206cc 6.\"
4a3d96b7 7.TH LS 1 ""
a10206cc
KM
8.UC
9.SH NAME
10ls \- list contents of directory
11.SH SYNOPSIS
12.B ls
13[
9d5fbfa8 14.B \-1AaCcdFfgikLlqRrstu
c699b55c 15] [ file ... ]
a10206cc 16.br
a10206cc
KM
17.SH DESCRIPTION
18For each directory argument,
19.I ls
20lists the contents of the directory;
21for each file argument,
22.I ls
23repeats its name and any other information requested.
30149789 24By default, the output is sorted alphabetically.
a10206cc
KM
25When no argument is given, the current directory is listed.
26When several arguments are given,
27the arguments are first sorted appropriately,
30149789 28but file arguments are processed
a10206cc
KM
29before directories and their contents.
30.PP
c699b55c 31The options are as follows:
a10206cc 32.TP
c699b55c
KB
33.B \-1
34force one entry per line output format; this is the default when
35output is not to a terminal.
a10206cc 36.TP
c699b55c
KB
37.B \-A
38List all entries except for ``.'' and ``..''.
39Always set for the super-user.
a10206cc 40.TP
30149789
KM
41.B \-a
42List all entries; in the absence of this option, entries whose
43names begin with a period
44.RB ( . )
45are
46.I not
47listed.
a10206cc 48.TP
c699b55c
KB
49.B \-C
50force multi-column output; this is the default when output is to a terminal.
0a413117 51.TP
c699b55c
KB
52.B \-c
53Use time when file status was last changed for sorting or printing.
a10206cc 54.TP
30149789
KM
55.B \-d
56If argument is a directory, list only its name;
57often used with \fB\-l\fR to get the status of a directory.
58.TP
9d5fbfa8
KB
59.B \-f
60Don't sort the output.
61.TP
c699b55c
KB
62.B \-F
63cause directories to be marked with a trailing `/',
64sockets with a trailing `=',
65symbolic links with a trailing `@', and executable
66files with a trailing `*'.
67.TP
68.B \-g
69Include the group ownership of the file in a long output.
70.TP
71.B \-i
72For each file, print the i-number in the first column of the report.
73.TP
74.B -k
75Modifies the
76.I -s
77option, causing the sizes to be reported in kilobytes.
78.TP
30149789
KM
79.B \-L
80If argument is a symbolic link, list the file or directory the link references
81rather than the link itself.
a10206cc 82.TP
c699b55c
KB
83.B \-l
84List in long format, giving mode, number of links, owner,
85size in bytes, and time of last modification for each file.
86(See below.)
87If the file is a special file the size field will instead contain
88the major and minor device numbers.
89If the file is a symbolic link the pathname of
90the linked-to file is printed preceded by ``\->''.
91.TP
92.B \-q
93force printing of non-graphic characters in file names as
94the character `?'; this is the default when output is to a terminal.
95.TP
96.B \-R
97recursively list subdirectories encountered.
98.TP
30149789 99.B \-r
ccc80378
MK
100Reverse the order of sort to get reverse alphabetic
101or oldest first as appropriate.
a10206cc 102.TP
c699b55c
KB
103.B \-s
104Display the sizes of files and directories in 512-byte blocks.
105.TP
106.B \-t
107Sort by time modified (latest first) instead of
108by name.
109.TP
30149789 110.B \-u
a10206cc
KM
111Use time of last access instead of last
112modification for sorting
30149789
KM
113(with the \fB\-t\fP option)
114and/or printing (with the \fB\-l\fP option).
c699b55c
KB
115.PP
116The
117.IR -1 ,
118.IR -C ,
119and
120.I -l
121options all override each other; the last one specified determines
122the format used.
123.PP
124The
125.IR -c ,
126and
127.I -u
128options override each other; the last one specified determines
129the file time used.
a10206cc
KM
130.PP
131The mode printed under the
132.B \-l
133option contains 11 characters
134which are interpreted
135as follows:
136the first character is
137.TP 3
30149789 138.B d
a10206cc
KM
139if the entry is a directory;
140.br
141.ns
142.TP 3
30149789 143.B b
a10206cc
KM
144if the entry is a block-type special file;
145.br
146.ns
147.TP 3
30149789 148.B c
a10206cc
KM
149if the entry is a character-type special file;
150.br
151.ns
152.TP 3
30149789
KM
153.B l
154if the entry is a symbolic link;
155.br
156.ns
157.TP
158.B s
159if the entry is a socket, or
a10206cc
KM
160.br
161.ns
162.TP 3
163.B \-
164if the entry is a plain file.
165.PP
166The next 9 characters are interpreted
167as three sets of three bits each.
168The first set refers to owner permissions;
adbdb3c0 169the next refers to permissions to others in the same user-group;
a10206cc
KM
170and the last to all others.
171Within each set the three characters indicate
172permission respectively to read, to write, or to
173execute the file as a program.
174For a directory, `execute' permission is interpreted
30149789 175to mean permission to search the directory.
a10206cc
KM
176The permissions are indicated as follows:
177.TP 3
178.B r
179if the file is readable;
180.br
181.ns
182.TP 3
183.B w
184if the file is writable;
185.br
186.ns
187.TP 3
188.B x
189if the file is executable;
190.br
191.ns
192.TP 3
193.B \-
194if the indicated permission is not granted.
195.PP
303dbd7d
KB
196The group-execute permission character is given as \fBs\fP if the file has
197the set-group-id bit set; likewise the user-execute permission character is
198given as \fBs\fP if the file has the set-user-id bit set. These are given
199as \fBS\fP (capitalized) if the corresponding execute permission is NOT
200set.
a10206cc
KM
201.PP
202The last character of the mode (normally `x' or `\-') is
203.B t
204if the 1000 bit of the mode is on.
205See
206.IR chmod (1)
c699b55c
KB
207for the meaning of this mode. This is given as
208.B T
209(capitalized) if the corresponding execute permission is NOT set.
a10206cc
KM
210.PP
211When the sizes of the files in a directory
212are listed, a total count of blocks,
213including indirect blocks is printed.
214.SH FILES
30149789 215/etc/passwd to get user id's for
a10206cc
KM
216`ls \-l'.
217.br
30149789 218/etc/group to get group id's for
a10206cc
KM
219`ls \-g'.
220.SH BUGS
a10206cc
KM
221The option setting based on whether the output is a teletype is
222undesirable as ``ls\ \-s'' is much different than ``ls\ \-s\ |\ lpr''.
223On the other hand, not doing this setting would make old shell scripts
224which used
225.I ls
226almost certain losers.