mirror of
https://github.com/Llewellynvdm/exa.git
synced 2024-11-26 13:56:27 +00:00
A modern replacement for ‘ls’.
a4e17193d9
These were completely missing because I forgot about them... I added sorting functionality before I added date functionality, but it turns out I didn't even need the datetime library to do this! However, this implementation feels incomplete. If you sort by the accessed date, it still displays the modified date, so the dates still look out of order. If I were to change the date column for the user, though, then there would still be no header to signify that the column has changed. I'm not sure how to proceed with this, but this is still missing functionality, so in it goes. |
||
---|---|---|
src | ||
.gitignore | ||
.travis.yml | ||
Cargo.lock | ||
Cargo.toml | ||
LICENCE | ||
README.md | ||
screenshot.png |
exa
exa is a replacement for ls
written in Rust.
Screenshot
Options
- -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
- -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.
Installation
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 cargo build
will pull in all the dependencies and compile exa.
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.