Are you Using Linux or Terminal in macOS? If so, here are some of the cool Command-Line Tools you can use for better productivity and speed. I have another Post for Modern Alternatives to Common Unix Commands. Here's a list of some of the popular command-line tools:
fzf- Is a general-purpose command-line fuzzy finder, written in Go. It interactively filters the command line that can be used with any list; files, command history, processes, hostnames, bookmarks, git commits, etc. You can do a lot more than you can imagine. This is one of my favorite. Check out the GitHub repo for more.
- Portable, no dependencies.
- Batteries included - Vim/Neovim plugin, key bindings, and fuzzy auto-completion.
- Flexible layout.
- Blazingly fast.
- The most comprehensive feature set.
dive - Is a tool for exploring a docker image, layer contents, and discovering ways to shrink the size of your Docker/OCI image. It is written in Go.
- Show Docker image contents are broken down by layer.
- Indicate what's changed in each layer.
- Estimate "image efficiency".
- Quick build/analysis cycles.
- Multiple Image Sources and Container Engines Supported.
- Supports CI Integration.
tldr- Is a collaborative cheatsheets for console commands. It aims to be a simpler, more approachable complement to traditional 'man pages' and is community maintained. It is written in Markdown.
- Easy to read.
- Simple to use.
- Colored output.
- Lists only important/most frequently used options.
lazygit - A simple terminal UI for git commands, written in Go with the gocui library.
- You can add files easily.
- Resolve merge conflicts.
- Easily check out recent branches.
- Squash down and reword commits.
- Quick pushing/pulling.
- Scroll through logs/diffs of branches/commits/stash.
broot- Is an alternative to the
tree command used to see and navigate the directory in a tree format. It is written in Rust.
- Find a directory then
- You never lose track of file hierarchy while you search.
- You can manipulate your files.
- You can preview files.
- You can sort, and see what takes space.
- Can check git statuses.
hyperfine- It is a command-line benchmarking tool. You can run benchmarks on the CLI commands. Example: benchmark between
find commands. It is written in Rust.
- Statistical analysis across multiple runs.
- Support for arbitrary shell commands.
- Cache-clearing commands can be set up before each timing run.
- Export results to various formats: CSV, JSON, Markdown, AsciiDoc.
procs- A modern replacement for
ps written in Rust.
- Colored and human-readable output with automatic theme detection based on terminal background.
- Multi-column keyword search.
- Some additional information which are not supported by
- Pager support.
- Tree view.
cheat.sh - Unified access to the best community-driven cheat sheets repositories of the world. It is similar to
tldrcommand. It is written using Python.
- Has a simple curl/browser/editor interface.
- Covers 56 programming languages, several DBMSes, and more than 1000 most important UNIX/Linux commands.
- Provides access to the best community-driven cheat sheets repositories in the world, on par with StackOverflow.
- Available everywhere, no installation is needed, but can be installed for offline usage.
- Ultrafast, returns answers within 100 ms, as a rule.
- Has a convenient command-line client.
gping- Is a
pingcommand replacement, but with a graph. It is written in Rust.
- Graph the ping time for multiple hosts.
- Graph the execution time for commands via the
- Custom colors.
- Windows, Mac, and Linux support.
glances- Glances an Eye on your system. A top/htop alternative for GNU/Linux, BSD, Mac OS, and Windows operating systems.
- Present a large amount of monitoring information through curses or a Web-based interface.
- The information dynamically adapts depending on the size of the user interface.
- It can also work in client/server mode.
- Remote monitoring could be done via terminal, Web interface, or API (XML-RPC and RESTful).
- Stats can also be exported to files or external time/value databases.
Check out my other post,
There are a lot of other CLI tools as well but these are my favorite Command-Line Tools. Check these projects on GitHub for more detailed explanations, installation, configurations, usage, and more. If you like these kinds of stuff, check out my other posts, tutorials, and tips. If you want to stay updated, then subscribe to my Newsletter. As always see you in the next post.