exa is a modern replacement for the venerable ls command. Written in Rust, it provides better defaults, Git integration, and colorful output while remaining compatible with ls arguments.
📑 Table of Contents
Key Features
- Colors: Distinct colors for file types
- Git Status: Show file modification status
- Tree View: Hierarchical directory display
- Extended Attributes: xattrs and selinux support
- Grid View: Space-efficient layouts
Installation
Install exa on Ubuntu:
sudo apt install exa
# Create useful aliases
alias ls="exa"
alias ll="exa -la"
alias lt="exa --tree"
Usage Examples
Common exa commands:
# Long format with Git
exa -la --git
# Tree view with depth
exa --tree --level=2
# Sort by modification time
exa -la --sort=modified
# Group directories first
exa -la --group-directories-first
# Show icons (with nerdfont)
exa --icons
Benefits
exa improves directory listings with visual clarity and useful defaults. Its Git integration helps developers understand repository state at a glance.
Was this article helpful?