Skip to content

Replacing ls with eza


Created: – Last Updated:

I’ve previously written about Replacing ls with exa and I have used exa (opens in a new tab) for many years. But now, at the time of writing, exa is unmaintained. You should use the fork eza (opens in a new tab) instead.

eza describes itself similar to exa:

eza is a modern alternative for the venerable file-listing command-line program ls that ships with Unix and Linux operating systems, giving it more features and better defaults.

The fork fixed some annoying bugs and added more features.

Follow the installation guide (opens in a new tab) to install eza. I personally used the cargo install command as I have the Rust toolchain set up on my machine. Normally I’d use MacPorts (opens in a new tab) but the port would install the rust port, too, which I don’t want (because then I have to Rust versions on my machine).

Don’t forget to install the completions (opens in a new tab).

Here’ are the aliases I use:

Terminal window
## eza
alias ls="eza" # ls
alias ll='eza -lbF --git' # list, size, type, git
alias llm='eza -lbGd --git --sort=modified' # long list, modified date sort
alias la='eza -lbhHigUmuSa --time-style=long-iso --git --color-scale' # all list
alias lx='eza -lbhHigUmuSa@ --time-style=long-iso --git --color-scale' # all + extended list
alias lS='eza -1' # one column, just names
alias lt='eza --tree --level=2' # tree