If you spend your days in the terminal, you already know ls: tiny, fast, and—let’s be honest—visually bland. Enter Eza, a modern re-imagining of the classic ls command that keeps the snappy feel while layering on readability, context, and aesthetics. Think of it as ls after a spa day: refreshed, colorful, and unexpectedly delightful—without breaking your muscle memory.
In this guide, we’ll unpack what Eza is, why it exists, and how it can make your daily shell life sharper, faster, and far more informative.
What Is Eza?
Eza is a command-line tool that lists files and directories like ls, but with smarter defaults, rich metadata, and human-friendly formatting. It’s designed to be a drop-in improvement: same purpose, familiar flags, radically better output.
Key idea: signal over noise. Eza emphasizes what you actually need to see—permissions that matter, Git status where it counts, icons and colors that guide your eye—while avoiding the visual sludge that can make ls -l feel like a wall of glyphs.
Why Not Just ls?
ls is legendary for a reason, but it shows its age:
-
Minimal context (where’s my Git status? which files are executable?)
-
Hard-to-scan columns (especially on wide or long listings)
-
Inconsistent options across platforms
-
Sparse Unicode/emoji/icon support
Eza tackles all of this with a modern stack and thoughtful defaults—without demanding you relearn the terminal.
Headline Features You’ll Notice Immediately
-
Readable, color-rich output
Distinct colors, subtle symbols, and sensible spacing make big directories instantly scannable. -
Git awareness
See untracked, modified, or ignored files inline with--git. You’ll stop bouncing betweengit statusandls. -
Icons & filetype hints
Optional icons and clear markers for directories, symlinks, sockets, and executables help you spot what’s what at a glance. -
Human-friendly details
Flags like--total-size,--group-directories-first, and humanized sizes make listings feel… human. -
Tree view done right
-Tfor trees, with depth control, filtering, and clean indentation. Perfect for peeking into nested structures. -
Hyperlinks to files
--hyperlinklets terminals that support it open files and folders with a click. -
Flexible sorting & filtering
Sort by size, time, extension, natural order; hide dotfiles or match globs; show only what’s relevant.
Common Eza Examples (Copy & Paste)
Tip: You can alias
lstoezasafely once you’re comfortable.
-
Pretty long list (most popular)
eza -l --group-directories-first --git -
Show hidden files, human sizes
eza -la --bytes --git -
Tree view with depth
eza -T --level=2 -
Icons + Git + headers
eza -l --icons --git --header -
Newest files first
eza -l --sort=modified --reverse -
Only directories, one per line
eza -D -
Follow
.gitignore(stay focused)eza -a --git-ignore
Quality-of-Life Flags You’ll Keep Using
-
--group-directories-first– Directories at the top, always. -
--icons– Enable file icons if your font supports them. -
--git– Inline Git status (modified, untracked, ignored). -
--sort=name|modified|size|extension|accessed– Sort exactly how you think. -
--time-style=relative|iso|long-iso– Control timestamp format. -
--binaryor--bytes– Size units your brain doesn’t have to convert. -
--classify– Append indicators like/for dirs,*for executables. -
--hyperlink– Clickable paths in compatible terminals. -
--header– Adds column headers in long listings (you’ll never go back). -
--level=N(with-T) – Limit tree depth to avoid noise.
Eza vs. ls: What Actually Changes?
| Capability | ls |
Eza |
|---|---|---|
| Colorful, consistent UI | Varies by platform | Thoughtful, cross-platform |
| Git status in listing | No | Yes (--git) |
| Icons & type markers | Minimal | Optional icons, clear markers |
| Tree view | External tree tool |
Built-in (-T) |
| Hyperlinks | Rare | First-class (--hyperlink) |
| Sorting & filters | Basic | Rich, intuitive |
| Readability | Dense, old-school | Clean, human-centric |
You don’t lose speed or control—you gain context.
Installation: Your Fastest Path
Eza is widely packaged across Linux distros and is available on macOS and BSDs. Typical routes:
-
Linux: via your distro’s package manager (e.g.,
apt,dnf,pacman,zypper,xbps,emerge,nix-env). -
macOS:
brew install eza(or Nix/MacPorts). -
Build from source: use
cargo install ezaif you prefer Rust-native installs or want the newest features.
Pro tip: After installing, confirm with
eza --versionand test in a directory with Git history to feel the difference.
Smart Aliases (Gentle Adoption)
You don’t have to go all-in immediately. Start with drop-in aliases:
# Safer long listing with Git and headers
alias ll='eza -l --group-directories-first --git --header'
# Show hidden files, human sizes
alias la='eza -la --group-directories-first --header'
# Tree overview up to two levels
alias lt='eza -T --level=2'
Keep ls around until you’re comfortable—then switch the alias when it feels obvious.
Performance & Compatibility Notes
-
Speed: Eza is designed to be competitive with
lsfor typical interactive use; the richer output does a lot of work for your eyes without lagging your fingers. -
Fonts: Icons need a Nerd Font / icon-capable font. If icons look odd, disable
--iconsor install a Nerd Font. -
Terminals: Hyperlinks require a terminal that supports OSC 8 (many do).
-
Scripting: For scripts, prefer explicit flags and stable output; interactive sugar (icons, colors) is best for humans.
Who Benefits Most?
-
Developers who bounce between code, build artefacts, and Git branches all day.
-
Ops/SREs scanning noisy directories under pressure.
-
Learners who want a friendlier, more informative CLI without memorizing arcane flags.
-
Anyone who cares about speed and clarity.
Quick FAQ
Is Eza a drop-in replacement for ls?
Practically, yes—especially for interactive use. Some option names differ, so test aliases before scripting.
Do I have to use icons or colors?
No. Eza is great in plain mode too. You control the frosting.
Will it mess with my Git repo?
No—Eza reads status; it doesn’t write.
Can I use it on remote servers?
Yes, as long as you can install it (system package or static build). It’s a perfect quality-of-life upgrade over SSH.
Verdict: Eza Makes Your Terminal Feel Modern—Instantly
If you’ve ever squinted at a dense ls -l and wished it said more with less effort, Eza is the upgrade. It keeps the spirit of ls, adds the context you constantly look up elsewhere, and turns directory listings into information you can act on at a glance. Minimal friction, maximal clarity—that’s the whole point.
Switch your ll alias for a week. You’ll wonder how you ever lived without it.
Comments
Post a Comment