Home

Awesome

<!-- SPDX-FileCopyrightText: 2023-2024 Christina Sørensen SPDX-FileContributor: Christina Sørensen SPDX-License-Identifier: EUPL-1.2 --> <div align="center">

eza

A modern replacement for ls.

<a href="https://matrix.to/#/#eza-community:gitter.im"><img alt="Gitter" src="https://img.shields.io/gitter/room/eza-community/eza?logo=element&link=https%3A%2F%2Fapp.gitter.im%2F%23%2Froom%2F%23eza%3Agitter.im&link=Gitter%20matrix%20room%20for%20Eza" width=200></a>

Built with Nix Contributor Covenant

Unit tests Crates.io Crates.io

</div>

eza demo gif


eza is a modern, maintained replacement for the venerable file-listing command-line program ls that ships with Unix and Linux operating systems, giving it more features and better defaults. It uses colours to distinguish file types and metadata. It knows about symlinks, extended attributes, and Git. And it’s small, fast, and just one single binary.

By deliberately making some decisions differently, eza attempts to be a more featureful, more user-friendly version of ls.


eza features not in exa (non-exhaustive):

...and like, so much more that it became exhausting to update this all the time. Like seriously, we have a lot of good stuff.


<a id="try-it"> <h1>Try it!</h1> </a>

Nix ❄️

If you already have Nix setup with flake support, you can try out eza with the nix run command:

nix run github:eza-community/eza

Nix will build eza and run it.

If you want to pass arguments this way, use e.g. nix run github:eza-community/eza -- -ol.

Installation

eza is available for Windows, macOS and Linux. Platform and distribution specific installation instructions can be found in INSTALL.md.

Packaging status


<a id="options"> <h1>Command-line options</h1> </a>

eza’s options are almost, but not quite, entirely unlike ls’s. Quick overview:

Display options

<details> <summary>Click to expand</summary> </details>

Filtering options

<details> <summary>Click to expand</summary>

Pass the --all option twice to also show the . and .. directories.

</details>

Long view options

<details> <summary>Click to expand</summary>

These options are available when running with --long (-l):

Some of the options accept parameters:

See the man pages for further documentation of usage. They are available

</details>

Custom Themes

<details> <summary>Click to expand</summary>

Eza has recently added support for a theme.yml file, where you can specify all of the existing theme-ing options available for the LS_COLORS and EXA_COLORS environment variables, as well as the option to specify different icons for different file types and extensions. Any existing environment variables set will continue to work and will take precedence for backwards compatibility.

New Pre-made themes

Check out the themes available in the official eza-themes repository, or contribute your own.

An example theme file is available in docs/theme.yml, and needs to either be placed in a directory specified by the environment variable EZA_CONFIG_DIR, or will looked for by default in $XDG_CONFIG_HOME/eza.

Full details are available on the man page and an example theme file is included here

</details>

Hacking on eza

If you wanna contribute to eza, firstly, you're expected to follow our code of conduct. After having understood the code of conduct, you can have a look at our CONTRIBUTING.md for more info about actual hacking.

Star History Chart