You know that feeling when you discover a tool and think "where has this been all my life?"
These five terminal tools did that for me. Not the obvious ones everyone talks about (yeah, we all know about git and npm). These are the productivity gems that actually changed my daily workflow.
1. fzf - Fuzzy Finder That Feels Like Magic
If you're still typing out full file paths in 2026, we need to talk.
fzf is a fuzzy finder that lets you search through ANYTHING — files, command history, git branches, processes. Type a few letters, get instant results.
Real example from today:
Instead of git checkout feature/user-authentication-refactor-v2, I just type:
git checkout $(git branch | fzf)
Then type "auth" and boom, done.
Install:
# Mac
brew install fzf
# Linux
sudo apt install fzf
Pro tip: Add this to your .bashrc or .zshrc:
# Ctrl+R for command history search
[ -f ~/.fzf.bash ] && source ~/.fzf.bash
Now Ctrl+R gives you a beautiful searchable history instead of that janky default.
2. bat - Cat on Steroids
cat is fine, but bat is cat with syntax highlighting, line numbers, and git integration built in.
Before:
cat server.js # wall of monochrome text
After:
bat server.js # beautiful highlighted code
It automatically pages long files, shows git modifications in the sidebar, and even integrates with fzf:
# Preview files while searching
fzf --preview 'bat --color=always {}'
Install:
brew install bat
# or
sudo apt install bat
3. ripgrep (rg) - Grep But Insanely Fast
grep is slow. ripgrep is stupid fast.
I used to wait 5-10 seconds searching a large codebase. Now it's instant.
Search all files for "TODO":
rg "TODO" --type js
Find all API endpoints:
rg "app\.(get|post|put|delete)" --type js
Case-insensitive search with context:
rg -i "database" -C 3
It respects .gitignore by default (huge), supports regex, and shows results in a clean format.
Install:
brew install ripgrep
# or
sudo apt install ripgrep
4. tldr - Man Pages for Humans
man pages are comprehensive but overwhelming. tldr gives you practical examples instead.
Compare these:
man tar # 3000 lines of dense documentation
tldr tar # 8 examples that actually help
Output from tldr tar:
tar
Archiving utility.
- Create an archive from files:
tar -cf target.tar file1 file2 file3
- Extract an archive:
tar -xf source.tar
- Create a gzipped archive:
tar -czf target.tar.gz file1 file2
You get the idea. It's the StackOverflow answer you were going to Google anyway.
Install:
npm install -g tldr
# or
brew install tldr
5. jq - JSON Swiss Army Knife
If you work with APIs, jq will change your life.
Pretty-print API response:
curl https://api.example.com/users | jq
Extract specific fields:
curl https://api.example.com/users | jq '.[].email'
Filter and transform:
# Get all users with admin role
curl https://api.example.com/users | jq '[.[] | select(.role == "admin")]'
I used to pipe JSON to a file and open it in VS Code. Now I just use jq and move on.
Install:
brew install jq
# or
sudo apt install jq
The Compound Effect
Here's the thing: each tool saves maybe 30 seconds per use. Doesn't sound like much.
But I use these tools dozens of times a day. That's 15-20 minutes saved daily. Over a year? 100+ hours of productivity gained.
Plus, they make coding more enjoyable. When your tools feel smooth, you stay in flow longer.
Want More Dev Productivity Tips?
I write about tools, AI workflows, and productivity hacks for developers every week. No fluff, just practical stuff you can use immediately.
Subscribe to LearnAI Weekly — my newsletter where I share what's actually working.
What terminal tools are in your daily rotation? Drop a comment — always looking to level up my setup.
Top comments (0)