1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
|
.\" Automatically generated by Pandoc 2.9.1.1
.\"
.TH "exa" "1" "" "v0.9.0" ""
.hy
.SH NAME
.PP
exa \[em] a modern replacement for ls
.SH SYNOPSIS
.PP
\f[C]exa [options] [files...]\f[R]
.PP
\f[B]exa\f[R] is a modern replacement for \f[C]ls\f[R].
It uses colours for information by default, helping you distinguish
between many types of files, such as whether you are the owner, or in
the owning group.
.PP
It also has extra features not present in the original \f[C]ls\f[R],
such as viewing the Git status for a directory, or recursing into
directories with a tree view.
.SH EXAMPLES
.TP
\f[B]\f[CB]exa\f[B]\f[R]
Lists the contents of the current directory in a grid.
.TP
\f[B]\f[CB]exa --oneline --reverse --sort=size\f[B]\f[R]
Displays a list of files with the largest at the top.
.TP
\f[B]\f[CB]exa --long --header --inode --git\f[B]\f[R]
Displays a table of files with a header, showing each file\[cq]s
metadata, inode, and Git status.
.TP
\f[B]\f[CB]exa --long --tree --level=3\f[B]\f[R]
Displays a tree of files, three levels deep, as well as each file\[cq]s
metadata.
.SH DISPLAY OPTIONS
.TP
\f[B]\f[CB]-1\f[B]\f[R], \f[B]\f[CB]--oneline\f[B]\f[R]
Display one entry per line.
.TP
\f[B]\f[CB]-F\f[B]\f[R], \f[B]\f[CB]--classify\f[B]\f[R]
Display file kind indicators next to file names.
.TP
\f[B]\f[CB]-G\f[B]\f[R], \f[B]\f[CB]--grid\f[B]\f[R]
Display entries as a grid (default).
.TP
\f[B]\f[CB]-l\f[B]\f[R], \f[B]\f[CB]--long\f[B]\f[R]
Display extended file metadata as a table.
.TP
\f[B]\f[CB]-R\f[B]\f[R], \f[B]\f[CB]--recurse\f[B]\f[R]
Recurse into directories.
.TP
\f[B]\f[CB]-T\f[B]\f[R], \f[B]\f[CB]--tree\f[B]\f[R]
Recurse into directories as a tree.
.TP
\f[B]\f[CB]-x\f[B]\f[R], \f[B]\f[CB]--across\f[B]\f[R]
Sort the grid across, rather than downwards.
.TP
\f[B]\f[CB]--color\f[B]\f[R], \f[B]\f[CB]--colour=WHEN\f[B]\f[R]
When to use terminal colours.
Valid settings are `\f[C]always\f[R]', `\f[C]automatic\f[R]', and
`\f[C]never\f[R]'.
.TP
\f[B]\f[CB]--color-scale\f[B]\f[R], \f[B]\f[CB]--colour-scale\f[B]\f[R]
Colour file sizes on a scale.
.TP
\f[B]\f[CB]--icons\f[B]\f[R]
Display icons next to file names.
.TP
\f[B]\f[CB]--no-icons\f[B]\f[R]
Don\[cq]t display icons.
(Always overrides \[en]icons)
.SH FILTERING AND SORTING OPTIONS
.TP
\f[B]\f[CB]-a\f[B]\f[R], \f[B]\f[CB]--all\f[B]\f[R]
Show hidden and \[lq]dot\[rq] files.
Use this twice to also show the `\f[C].\f[R]' and `\f[C]..\f[R]'
directories.
.TP
\f[B]\f[CB]-d\f[B]\f[R], \f[B]\f[CB]--list-dirs\f[B]\f[R]
List directories like regular files.
.TP
\f[B]\f[CB]-L\f[B]\f[R], \f[B]\f[CB]--level=DEPTH\f[B]\f[R]
Limit the depth of recursion.
.TP
\f[B]\f[CB]-r\f[B]\f[R], \f[B]\f[CB]--reverse\f[B]\f[R]
Reverse the sort order.
.TP
\f[B]\f[CB]-s\f[B]\f[R], \f[B]\f[CB]--sort=SORT_FIELD\f[B]\f[R]
Which field to sort by.
.PP
Valid sort fields are `\f[C]name\f[R]', `\f[C]Name\f[R]',
`\f[C]extension\f[R]', `\f[C]Extension\f[R]', `\f[C]size\f[R]',
`\f[C]modified\f[R]', `\f[C]changed\f[R]', `\f[C]accessed\f[R]',
`\f[C]created\f[R]', `\f[C]inode\f[R]', `\f[C]type\f[R]', and
`\f[C]none\f[R]'.
.PP
The \f[C]modified\f[R] sort field has the aliases `\f[C]date\f[R]',
`\f[C]time\f[R]', and `\f[C]newest\f[R]', and its reverse order has the
aliases `\f[C]age\f[R]' and `\f[C]oldest\f[R]'.
.PP
Sort fields starting with a capital letter will sort uppercase before
lowercase: `A' then `B' then `a' then `b'.
Fields starting with a lowercase letter will mix them: `A' then `a' then
`B' then `b'.
.TP
\f[B]\f[CB]-I\f[B]\f[R], \f[B]\f[CB]--ignore-glob=GLOBS\f[B]\f[R]
Glob patterns, pipe-separated, of files to ignore.
.TP
\f[B]\f[CB]--git-ignore\f[B]\f[R] [if exa was built with git support]
Do not list files that are ignored by Git.
.TP
\f[B]\f[CB]--group-directories-first\f[B]\f[R]
List directories before other files.
.TP
\f[B]\f[CB]-D\f[B]\f[R], \f[B]\f[CB]--only-dirs\f[B]\f[R]
List only directories, not files.
.SH LONG VIEW OPTIONS
.PP
These options are available when running with \f[C]--long\f[R]
(\f[C]-l\f[R]):
.TP
\f[B]\f[CB]-b\f[B]\f[R], \f[B]\f[CB]--binary\f[B]\f[R]
List file sizes with binary prefixes.
.TP
\f[B]\f[CB]-B\f[B]\f[R], \f[B]\f[CB]--bytes\f[B]\f[R]
List file sizes in bytes, without any prefixes.
.TP
\f[B]\f[CB]--changed\f[B]\f[R]
Use the changed timestamp field.
.TP
\f[B]\f[CB]-g\f[B]\f[R], \f[B]\f[CB]--group\f[B]\f[R]
List each file\[cq]s group.
.TP
\f[B]\f[CB]-h\f[B]\f[R], \f[B]\f[CB]--header\f[B]\f[R]
Add a header row to each column.
.TP
\f[B]\f[CB]-H\f[B]\f[R], \f[B]\f[CB]--links\f[B]\f[R]
List each file\[cq]s number of hard links.
.TP
\f[B]\f[CB]-i\f[B]\f[R], \f[B]\f[CB]--inode\f[B]\f[R]
List each file\[cq]s inode number.
.TP
\f[B]\f[CB]-m\f[B]\f[R], \f[B]\f[CB]--modified\f[B]\f[R]
Use the modified timestamp field.
.TP
\f[B]\f[CB]-n\f[B]\f[R], \f[B]\f[CB]--numeric\f[B]\f[R]
List numeric user and group IDs.
.TP
\f[B]\f[CB]-S\f[B]\f[R], \f[B]\f[CB]--blocks\f[B]\f[R]
List each file\[cq]s number of file system blocks.
.TP
\f[B]\f[CB]-t\f[B]\f[R], \f[B]\f[CB]--time=WORD\f[B]\f[R]
Which timestamp field to list.
Valid timestamp fields are `\f[C]modified\f[R]', `\f[C]changed\f[R]',
`\f[C]accessed\f[R]', and `\f[C]created\f[R]'.
.TP
\f[B]\f[CB]--time-style=STYLE\f[B]\f[R]
How to format timestamps.
Valid timestamp styles are `\f[C]default\f[R]', `\f[C]iso\f[R]',
`\f[C]long-iso\f[R]', and `\f[C]full-iso\f[R]'.
.TP
\f[B]\f[CB]-u\f[B]\f[R], \f[B]\f[CB]--accessed\f[B]\f[R]
Use the accessed timestamp field.
.TP
\f[B]\f[CB]-U\f[B]\f[R], \f[B]\f[CB]--created\f[B]\f[R]
Use the created timestamp field.
.TP
\f[B]\f[CB]--no-permissions\f[B]\f[R]
Suppress the permissions field.
.TP
\f[B]\f[CB]--no-filesize\f[B]\f[R]
Suppress the file size field.
.TP
\f[B]\f[CB]--no-user\f[B]\f[R]
Suppress the user field.
.TP
\f[B]\f[CB]--no-time\f[B]\f[R]
Suppress the time field.
.TP
\f[B]\f[CB]-\[at]\f[B]\f[R], \f[B]\f[CB]--extended\f[B]\f[R]
List each file\[cq]s extended attributes and sizes.
.TP
\f[B]\f[CB]--git\f[B]\f[R] [if exa was built with git support]
List each file\[cq]s Git status, if tracked.
.SH ENVIRONMENT VARIABLES
.PP
exa responds to the following environment variables:
.SS \f[C]COLUMNS\f[R]
.PP
Overrides the width of the terminal, in characters.
.PP
For example, `\f[C]COLUMNS=80 exa\f[R]' will show a grid view with a
maximum width of 80 characters.
.PP
This option won\[cq]t do anything when exa\[cq]s output doesn\[cq]t
wrap, such as when using the \f[C]--long\f[R] view.
.SS \f[C]EXA_STRICT\f[R]
.PP
Enables \f[I]strict mode\f[R], which will make exa error when two
command-line options are incompatible.
.PP
Usually, options can override each other going right-to-left on the
command line, so that exa can be given aliases: creating an alias
`\f[C]exa=exa --sort=ext\f[R]' then running `\f[C]exa --sort=size\f[R]'
with that alias will run `\f[C]exa --sort=ext --sort=size\f[R]', and the
sorting specified by the user will override the sorting specified by the
alias.
.PP
In strict mode, the two options will not co-operate, and exa will error.
.PP
This option is intended for use with automated scripts and other
situations where you want to be certain you\[cq]re typing in the right
command.
.SS \f[C]EXA_GRID_ROWS\f[R]
.PP
Limits the grid-details view (`\f[C]exa --grid --long\f[R]') so it\[cq]s
only activated when at least the given number of rows of output would be
generated.
.PP
With widescreen displays, it\[cq]s possible for the grid to look very
wide and sparse, on just one or two lines with none of the columns
lining up.
By specifying a minimum number of rows, you can only use the view if
it\[cq]s going to be worth using.
.SS \f[C]EXA_ICON_SPACING\f[R]
.PP
Specifies the number of spaces to print between an icon (see the
`\f[C]--icons\f[R]' option) and its file name.
.PP
Different terminals display icons differently, as they usually take up
more than one character width on screen, so there\[cq]s no
\[lq]standard\[rq] number of spaces that exa can use to separate an icon
from text.
One space may place the icon too close to the text, and two spaces may
place it too far away.
So the choice is left up to the user to configure depending on their
terminal emulator.
.SS \f[C]LS_COLORS\f[R], \f[C]EXA_COLORS\f[R]
.PP
Specifies the colour scheme used to highlight files based on their name
and kind, as well as highlighting metadata and parts of the UI.
.PP
For more information on the format of these environment variables, see
the \f[C]exa_colors(5)\f[R] manual page.
.SH EXIT STATUSES
.TP
0
If everything goes OK.
.TP
1
If there was an I/O error during operation.
.TP
3
If there was a problem with the command-line arguments.
.SH AUTHOR
.PP
exa is maintained by Benjamin `ogham' Sago and many other contributors.
.PP
\f[B]Website:\f[R] \f[C]https://the.exa.website/\f[R]
.PD 0
.P
.PD
\f[B]Source code:\f[R] \f[C]https://github.com/ogham/exa\f[R]
.PD 0
.P
.PD
\f[B]Contributors:\f[R]
\f[C]https://github.com/ogham/exa/graphs/contributors\f[R]
.SH SEE ALSO
.IP \[bu] 2
\f[C]exa_colors(5)\f[R]
|