exa is a replacement for ls
written in Rust.
- -1, --oneline: display one entry per line
- -a, --all: show dot files
- -b, --binary: use binary (power of two) file sizes
- -B, --bytes: list file sizes in bytes, without prefixes
- -d, --list-dirs: list directories as regular files
- -g, --group: show group as well as user
- --git: show git status (depends on libgit2, see below)
- -h, --header: show a header row
- -H, --links: show number of hard links column
- -i, --inode: show inode number column
- -l, --long: display extended details and attributes
- -r, --reverse: reverse sort order
- -R, --recurse: recurse into subdirectories
- -s, --sort=(field): field to sort by
- -S, --blocks: show number of file system blocks
- -t, --time: which timestamp to show for a file
- -T, --tree: recurse into subdirectories in a tree view
- -x, --across: sort multi-column view entries across
You can sort by name, size, ext, inode, modified, created, accessed, or none.
exa is written in Rust. You'll have to use the nightly -- I try to keep it up to date with the latest version when possible. Once you have it set up, a simple make install
will compile exa and install it into /usr/local/bin
.
exa depends on libgit2 for certain features. If you're unable to compile libgit2, you can opt out of Git support by passing --no-default-features
to Cargo.