Github repos for some usefull CLI tools

fd fd screenshot
fd is a program to find entries in your filesystem. It is a simple, fast and user-friendly alternative to find. While it does not aim to support all of find’s powerful functionality, it provides sensible (opinionated) defaults for a majority of use cases.

sudo apt install fd-find

Note that the binary is called fdfind as the binary name fd is already used by another package. It is recommended that after installation, you add a link to fd by executing command ln -s $(which fdfind) ~/.local/bin/fd ***

jq jq screenshot
jq is like sed for JSON data - you can use it to slice and filter and map and transform structured data with the same ease that sed, awk, grep and friends let you play with text.

sudo apt install jq

bat bat screenshot
bat supports syntax highlighting for a large number of programming and markup languages.

bat communicates with git to show modifications with respect to the index (see left side bar):

sudo apt install bat

Important: If you install bat this way, please note that the executable may be installed as batcat instead of bat (due to a name clash with another package). You can set up a bat -> batcat symlink or alias to prevent any issues that may come up because of this and to be consistent with other distributions:

mkdir -p ~/.local/bin
ln -s /usr/bin/batcat ~/.local/bin/bat

fff fff screenshot
A simple file manager written in bash.

git clone
cd fff
make install

CD on Exit:
To enable CD on Exit in Bash or Zsh, add this to your .bashrc, .zshrc or equivalent.
Run ‘fff’ with ‘f’ or whatever you decide to name the function.

f() {
fff "$@"
cd "$(cat "${XDG_CACHE_HOME:=${HOME}/.cache}/fff/.fff_d")"

duf duf screenshot
Disk Usage/Free Utility (Linux, BSD, macOS & Windows)

sudo apt install duf

exa exa screenshot
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.

By deliberately making some decisions differently, exa attempts to be a more featureful, more user-friendly version of ls.

sudo apt install exa


Oh My Zsh is an open source, community-driven framework for managing your zsh configuration.

sh -c "$(curl -fsSL"

Before using ohmyzsh you need to make sure that zsh is installed:
zsh installation instructions

sudo apt install zsh

Plugins for ohmyzsh:

plugins=(git macos common-aliases dirhistory zsh-autosuggestions zsh-syntax-highlighting)

All of these plugins come with ohmyzsh and they only need to be included in ~/.zshrc except zsh-syntax-highlighting and zsh-autosuggestions, which needs to be installed additionally with the commands below:

git clone ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-syntax-highlighting
git clone ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-autosuggestions

ohmyzsh themes I use:



btop screenshot
Resource monitor that shows usage and stats for processor, memory, disks, network and processes.

snap install btop


HTTPie is a command-line HTTP client. Its goal is to make CLI interaction with web services as human-friendly as possible. HTTPie is designed for testing, debugging, and generally interacting with APIs & HTTP servers. The http & https commands allow for creating and sending arbitrary HTTP requests. They use simple and natural syntax and provide formatted and colorized output.

sudo apt install httpie

Related Posts