A Better Replacement for ls
If it ain’t broke don’t fix it.
This old addage is valuable advice that has been passed down through generations. But it hasn’t stopped these people from rewriting command line tools perfected 30+ years ago in Rust.
This week we’ll take a quick look at exa, a replacement for ls
. So why
should you ignore the wise advice from the addage and replace ls
? Because there are marginal
improvements to be had, duh! Although the improvements in this case are far from marginal.
So why is exa
more than marginally better than ls
?
- Saner defaults, e.g human readable file sizes by default
- Beautiful colours
- Including the ability to customize colours by file type
- Git status integration with
--git
- Tree view with
-T/--tree
- Long grid view with
--grid --long
- Icons with
--icons
(needs font that supports them, check out the nerdfonts project to obtain one) - The
--color
flag can also be written as--colour
(us Canadians understand why this is important) - and more!
If you still aren’t convinced, check out the features page for a deep dive into any of the above.
Take a look at the installation instructions. It exists in many
package managers, you can use cargo install exa
or simply download the binary and drop it in your
$PATH
. Because I can’t think of any reason to use ls
after installing exa
, I’ve also added:
alias ls="exa"
to my shell’s profile (muscle memory is hard to overcome). Enjoy!