Tired of the plain ls command? exa modernizes your terminal with Git status, colorized output, and tree views—all in one command. Here’s how to upgrade your workflow.
Why Replace ls with exa?
While ls has been the standard directory listing tool for decades, it lacks modern features developers need today. Replace ls with exa to gain Git integration, intuitive color schemes, and faster navigation—without sacrificing simplicity.
Git Integration for Version Control Insights
Unlike ls, exa displays Git status directly in directory listings. Use exa --git to see staged, modified, or untracked files at a glance. This eliminates the need to run separate git status commands, saving precious time during development cycles.
Enhanced Visuals and Readability
exa’s color-coded output highlights file types, permissions, and metadata. For example, executables appear in green, directories in blue, and symlinks in cyan. This visual hierarchy makes it easier to scan directories quickly compared to ls‘s monochrome output.
Installing exa Across Platforms
Getting started with exa is straightforward. Here’s how to install it on your system:
- macOS:
brew install exa - Linux:
sudo apt install exa(Debian/Ubuntu) orsudo dnf install exa(Fedora) - Windows:
scoop install exaor via Chocolatey
Key exa Features for Developers
Git Status in Directory Listings
Run exa -l --git to see file statuses like M (modified), A (added), or D (deleted). This integration works seamlessly with your existing Git repositories, providing real-time version control insights directly in your terminal.
Tree View and File Metadata
Use exa -T to generate a tree structure of your directory. Combined with --long, it shows detailed metadata like file size, modification date, and permissions—all in a clean, readable format.
Customizing Color Schemes
Adjust exa’s colors to match your terminal theme using the --color-scale flag. For example, exa --color-scale=gradient applies a color gradient based on file age, making it easier to spot recent changes.
Practical Usage Examples
Here are common commands to maximize exa‘s potential:
exa -la --git: Show hidden files with Git statusexa --group-directories-first: Prioritize directories in listingsexa -s size: Sort files by size for quick analysis
Conclusion
Replacing ls with exa is a simple yet powerful upgrade for any developer’s toolkit. With built-in Git integration, intuitive visuals, and customizable options, exa streamlines directory navigation and boosts productivity. Start using it today by installing via your preferred package manager and experimenting with its flags—your terminal workflow will thank you.