DEV Community

Cover image for 7 great Terminal/CLI tools not everyone knows
Marco Behler
Marco Behler

Posted on

7 great Terminal/CLI tools not everyone knows

Do you work with the CLI a lot? It doesn't matter if Windows, macOS or Linux, in this video you'll learn 7 tools that I frequently use.

exa, clink, rg & rga, plocate, bat, jq, f%$!

What’s in the Video?

The video gives a short overview of how to use the tools mentioned above work. In order of appearance:

exa ( is a modern replacement for the venerable file-listing command-line program ls that ships with Unix and Linux operating systems, giving it more features and better defaults. It uses colours to distinguish file types and metadata. It knows about symlinks, extended attributes, and Git. And it’s small, fast, and just one single binary.

Clink ( combines the native Windows shell cmd.exe with the powerful command line editing features of the GNU Readline library, which provides rich completion, history, and line-editing capabilities. Readline is best known for its use in the Unix shell Bash, the standard shell for Mac OS X and many Linux distributions.

ripgrep ( is a line-oriented search tool that recursively searches the current directory for a regex pattern. By default, ripgrep will respect gitignore rules and automatically skip hidden files/directories and binary files. ripgrep has first class support on Windows, macOS and Linux, with binary downloads available for every release. ripgrep is similar to other popular search tools like The Silver Searcher, ack and grep.

plocate ( plocate is a locate(1) based on posting lists, completely replacing mlocate with a much faster (and smaller) index. It is suitable as a default locate on your system.

bat ( is a cat clone with syntax highlighting and Git integration.

jq ( is a lightweight and flexible command-line JSON processor.

thefuck ( is a magnificent app, inspired by a @liamosaur tweet, that corrects errors in previous console commands.

Top comments (1)

moopet profile image
Ben Sinclair

Regarding exa:

It uses colours to distinguish file types and metadata. It knows about symlinks, extended attributes

ls does all of thos things, though? It doesn't integrate with git, though that's what the git status command does. I don't want to suggest people shouldn't use whatever programs they find most comfortable, but exa doesn't sound like it offers anything at all.