A small note before the list: I use Linux so I have only tested them there, not even looking at if they are cross-platform or not.
General
- ag (The Silver Searcher): A better
grep
(reallyack
), really fast. - bat: A better
cat
. I like it because highlights syntax of many file formats and shows non-printable characters if desired. - caffeine/caffeinate: Prevent system from sleeping, optionally waiting for a pid to finish.
- curl: The ultimate tool to perform all kind of calls via the command line (often HTTP-related).
- fd: A better
find
. Simplified syntax and also noticeably faster. - fzf: A command-line fuzzy filter. Improves reverse searches (history) searches, processes outputs (displaying nice keyboard-navigable menus) and also provides a handy preview-window. Just for not having to exactly type every single character when doing reverse searches is worth it 😉
- htop: My favourite process viewer. Not too complex and fast.
- ImageMagick: The ultimate toolkit for image edition from the command-line. Not always easy to use, but really powerful.
- jq: The best companion for
curl
, formats input JSON data. - MultiTail: Self-explanatory, allows to
tail
multiple files at once, with many options. - vim: A text editor. Since I learned how to save changes and exit the program, it's the one I rely upon for quick editing from a terminal.
- yt-dlp: An actively maintained Youtube-dl fork, because I'm a big fan of downloading when I find them, but watching them whenever and wherever I want.
Terminal replacements
- Cool retro term: Nostalgic of either the 80s or Fallout 3-like terminals? Then this is your replacement.
- mosh: A "mobile shell", specially adapted for intermittent connectivity and high latency.
- tmate: A fork of
tmux
based on sharing the terminal. Perfect for interactive pair programming if you use command-line editors likevim
oremacs
. - tmux: Fine-grain control of multiple terminals in a single window.