Command Line
An ever-chaning collection of command line tools that I find useful on a daily basis or just fun to play with from time to time.
![Command Line](../command-line/images/cover_hu682c776cccd1bf8da0eb2eb0c0236c6f_134135_1440x0_resize_q75_box.jpg)
While I do have a strong preference for single
a.out
binaries without large dependency
trees that do not require additional runtimes, I’m also a strong believer of
using the right technology for the right job. Hence, I obviously prefer C/C++,
Rust, and Go programs, but I also don’t mind using Python-, Node.js-, Ruby- or
Elixir/Erlang-based helpers to get a job done. For example, I would definitely
want a C/C++ or Rust alternative to ls
– glad you’re asking, have
eza please and thank you – over a
Node.js version, simply because I want it to be instantly available and chew up
as little CPU and memory as possible. That’s also one of the reasons I try to
stay at least 6 feet apart from everything Electron-based, and why I don’t touch
anything that requires the JVM even with a 10 foot pole.
The Environment
I’m using Alacritty with a
minimalist
config, the Z
shell with Oh My Zsh and a rather
large .zshrc
. I
sometimes use tmux.
My color schemes change from time to time, but you can check my dotfiles to see what I’m currently using.
The Collection
arduino-cli
[go]![](../command-line/images/arduino-cli.gif)
Arduino command line tool.
Websiteasciinema
[python]![](../command-line/images/asciinema.gif)
asciinema [as-kee-nuh-muh] is a free and open source solution for recording terminal sessions and sharing them on the web.
Websitebandwhich
[rust]![](../command-line/images/bandwhich.gif)
Terminal bandwidth utilization tool.
Websitebat
[rust]![](../command-line/images/bat.gif)
A cat(1) clone with wings.
Websitebattop
[rust]![](../command-line/images/no-preview.gif)
battop is an interactive viewer, similar to top, htop and other top utilities, but about the batteries installed in your notebook.
Websitebingrep
[rust]![](../command-line/images/bingrep.gif)
Universal Command Line Interface for Amazon Web Services.
Websitebluetui
[rust]![](../command-line/images/bluetui.gif)
TUI for managing bluetooth devices.
Websitebottom
[rust]![](../command-line/images/btm.gif)
A cross-platform graphical process/system monitor with a customizable interface and a multitude of features. Supports Linux, macOS, and Windows.
Websitebrowsh
nodejs ![code-go]![](../command-line/images/browsh.gif)
A fully-modern text-based browser, rendering to TTY and browsers.
Websitechafa
[c]![](../command-line/images/chafa.gif)
Chafa is a command-line utility that converts all kinds of images, including animated GIFs, into sixel or ANSI/Unicode character output that can be displayed in a terminal.
Websitecode-minimap
[rust]![](../command-line/images/code-minimap.gif)
This tool is for generating text minimaps at speed.
Websitecointop
[go]![](../command-line/images/cointop.gif)
A fast and lightweight interactive terminal based UI application for tracking cryptocurrencies.
Websiteconclusive
[rust]![](../command-line/images/no-preview.gif)
Conclusive. A command line client for Plausible Analytics.
Websitecsview
[rust]![](../command-line/images/csview.gif)
A high performance csv viewer with cjk/emoji support.
Websitectop
[go]![](../command-line/images/ctop.gif)
Top-like interface for container metrics
Websitedasel
[go]![](../command-line/images/dasel.gif)
Select, put and delete data from JSON, TOML, YAML, XML and CSV files with a single tool. Supports conversion between formats and can be used as a Go package.
Websitedelta
[rust]![](../command-line/images/delta.gif)
A viewer for git and diff output.
Websitedijo
[rust]![](../command-line/images/dijo.gif)
dijo is a habit tracker. It is curses-based, it runs in your terminal.
Websitedust
[rust]![](../command-line/images/dust.gif)
du + rust = dust. Like du but more intuitive.
Websiteendlessh
[c]![](../command-line/images/no-preview.gif)
SSH tarpit that slowly sends an endless banner.
Websiteeva
[rust]![](../command-line/images/eva.gif)
A calculator REPL, similar to bc(1).
Websiteeza
[rust]![](../command-line/images/eza.gif)
A modern version of ‘ls’.
Websitefzf
[go]![](../command-line/images/fzf.gif)
A command-line fuzzy finder.
Websitegfold
[rust]![](../command-line/images/gfold.gif)
gfold is a CLI-driven application that helps you keep track of multiple Git repositories.
Websitegit-crypt
[c++]![](../command-line/images/git-crypt.gif)
Transparent file encryption in git.
Websitegit-journal
[rust]![](../command-line/images/git-journal.gif)
The Git Commit Message and Changelog Generation Framework.
Websitegitui
[rust]![](../command-line/images/gitui.gif)
Blazing fast terminal-ui for Git written in Rust.
Websiteglow
[go]![](../command-line/images/glow.gif)
Render markdown on the CLI, with pizzazz!
Websitegomphotherium
[go]![](../command-line/images/no-preview.gif)
Gomphotherium (/ˌɡɒmfəˈθɪəriəm/; “welded beast”), a command line Mastodon client.
Websitegotty
[go]![](../command-line/images/no-preview.gif)
Share your terminal as a web application.
Websitegpg-tui
[rust]![](../command-line/images/no-preview.gif)
Manage your GnuPG keys with ease!
Websitegping
[rust]![](../command-line/images/gping.gif)
Ping, but with a graph.
Websitegron
[go]![](../command-line/images/gron.gif)
Make JSON greppable!
Websitehexyl
[rust]![](../command-line/images/hexyl.gif)
A command-line hex viewer.
Websitehtmlq
[rust]![](../command-line/images/htmlq.gif)
Like jq, but for HTML.
Websitehugo
[go]![](../command-line/images/hugo.gif)
Hugo is a static HTML and CSS website generator written in Go.
Websitehyperfine
[rust]![](../command-line/images/hyperfine.gif)
A command-line benchmarking tool.
Websiteimager
[rust]![](../command-line/images/imager.gif)
Automated image compression for efficiently distributing images on the web.
Websiteirssi
[c]![](../command-line/images/no-preview.gif)
The client of the future.
I use this IRC client in combination with ZNC.
Websitejless
[rust]![](../command-line/images/jless.gif)
jless is a command-line JSON viewer designed for reading, exploring, and searching through JSON data.
Websitejwt-cli
[rust]![](../command-line/images/no-preview.gif)
A super fast CLI tool to decode and encode JWTs built in Rust.
Websitekmon
[rust]![](../command-line/images/kmon.gif)
Linux Kernel Manager and Activity Monitor.
Websitelemmeknow
[rust]![](../command-line/images/lemmeknow.gif)
The fastest way to identify anything!
Websitelf
[go]![](../command-line/images/lf.gif)
Terminal file manager.
Websitelnav
[c++]![](../command-line/images/lnav.gif)
Log file navigator.
Websitematterhorn
[haskell]![](../command-line/images/no-preview.gif)
Matterhorn is a terminal client for the Mattermost chat system.
Websitemc
[c]![](../command-line/images/mc.gif)
GNU Midnight Commander (also referred to as MC) is a user shell with text-mode full-screen interface.
Websitemdcat
[rust]![](../command-line/images/mdcat.gif)
cat for markdown.
Websitemosh
[c++]![](../command-line/images/mosh.gif)
Mobile Shell.
Here is a good post on why Mosh makes sense.
Websitencdu
[c]![](../command-line/images/ncdu.gif)
Ncdu is a disk usage analyzer with an ncurses interface.
Websiteneomutt
[c]![](../command-line/images/no-preview.gif)
NeoMutt was created when Richard Russon took all the old Mutt patches, sorted through them, fixed them up and documented them.
Websiteneovim
[c]![](../command-line/images/nvim.gif)
Vim-fork focused on extensibility and usability.
Websiteoxipng
[rust]![](../command-line/images/no-preview.gif)
Multithreaded PNG optimizer written in Rust.
Websitepastel
[rust]![](../command-line/images/pastel.gif)
pastel is a command-line tool to generate, analyze, convert and manipulate colors.
Websitepipe-rename
[rust]![](../command-line/images/no-preview.gif)
pipe-rename takes a list of files as input, opens your $EDITOR of choice, then renames those files accordingly.
Websiteprocs
[rust]![](../command-line/images/procs.gif)
A modern replacement for ps written in Rust.
Websiteradicle-cli
[rust]![](../command-line/images/rad.gif)
Radicle CLI.
Websiterates
[rust]![](../command-line/images/rates.gif)
Rates is a scriptable CLI tool that brings currency exchange rates right into your terminal and supports 30+ fiat and 10K+ crypto currencies.
Websitereader
[go]![](../command-line/images/reader.gif)
reader is for your command line what the “readability” view is for modern browsers: A lightweight tool offering better readability of web pages on the CLI.
Websiterestic
[go]![](../command-line/images/no-preview.gif)
Fast, secure, efficient backup program.
Websiteresto
[go]![](../command-line/images/resto.gif)
A CLI app that can send pretty HTTP & API requests with TUI.
Websiteripgrep
[rust]![](../command-line/images/rg.gif)
ripgrep recursively searches directories for a regex pattern.
Websitersnapshot
[perl]![](../command-line/images/no-preview.gif)
A tool for backing up your data using rsync.
Websiterustscan
[rust]![](../command-line/images/rustscan.gif)
The Modern Port Scanner.
Websiteshellcaster
[rust]![](../command-line/images/shellcaster.gif)
Shellcaster is a terminal-based podcast manager, built in Rust.
Websitesilicon
[rust]![](../command-line/images/silicon.gif)
Create beautiful image of your source code.
Websiteso
[rust]![](../command-line/images/so.gif)
A terminal interface for StackOverflow written in Rust.
Websitesocat
[c]![](../command-line/images/socat.gif)
“netcat++” (extended design, new implementation).
Websitesuperhighway84
[go]![](../command-line/images/superhighway84.gif)
USENET-inspired, uncensorable, decentralized internet discussion system running on IPFS & OrbitDB
Websitesyncthing
[go]![](../command-line/images/syncthing.gif)
Open Source Continuous File Synchronization.
I use this as an open source alternative to Resilio Sync in cases in which I only require system-to-system sync and hence don’t need mobile (iOS) support.
Websitetaskwarrior-tui
[rust]![](../command-line/images/taskwarrior-tui.gif)
A Terminal User Interface for Taskwarrior.
Websitetealdeer
[rust]![](../command-line/images/tldr.gif)
A very fast implementation of tldr in Rust.
Websiteticker
[go]![](../command-line/images/ticker.gif)
Terminal stock ticker with live updates and position tracking.
Websitetickrs
[rust]![](../command-line/images/tickrs.gif)
Realtime ticker data in your terminal.
Websitetmpmail
[rust]![](../command-line/images/tmpmail.gif)
A temporary email right from your terminal written in POSIX sh.
Websitetre
[rust]![](../command-line/images/tre.gif)
Tree command, improved.
Websitetz
[go]![](../command-line/images/tz.gif)
A time zone helper.
Websiteviu
[rust]![](../command-line/images/viu.gif)
A small command-line application to view images from the terminal written in Rust.
Websitevocage
[rust]![](../command-line/images/vocage.gif)
Vocage is a minimalistic terminal-based vocabulary-learning tool.
Websitewebsocat
[rust]![](../command-line/images/websocat.gif)
Netcat, curl and socat for WebSockets.
Websitewikit
[nodejs]![](../command-line/images/wikit.gif)
Wikipedia summaries from the command line.
Websitexplr
[rust]![](../command-line/images/xplr.gif)
A hackable, minimal, fast TUI file explorer.
Websiteyj
[go]![](../command-line/images/yj.gif)
CLI - Convert between YAML, TOML, JSON, and HCL. Preserves map order.
Websitezeit
[go]![](../command-line/images/zeit.gif)
Zeit, erfassen. A command line tool for tracking time spent on activities.
Websitezenith
[rust]![](../command-line/images/zenith.gif)
Sort of like top or htop but with zoom-able charts, network, and disk usage.
Websitezoxide
[rust]![](../command-line/images/no-preview.gif)
A smarter cd command. Supports all major shells.
WebsiteSnippets
This is a list of command snippets that I regularly need/use. I’m putting them here in order to persist them in case my zsh history should be gone one day.
- Stream DSLR viewfinder via USB-C to
/dev/video0
:gphoto2 --stdout --capture-movie \ | ffmpeg -i - -vcodec rawvideo -pix_fmt yuv420p -threads 0 -f v4l2 /dev/video0
- Set GTK theme:
gsettings set org.gnome.desktop.interface gtk-theme "$GTK_THEME" \ && gsettings set org.gnome.desktop.wm.preferences theme "$GTK_THEME"
- Arduino compiling & uploading:
arduino-cli compile --fqbn esp32:esp32:esp32s2 --clean -e ./ \ && arduino-cli upload -p /dev/ttyUSB0 --fqbn esp32:esp32:esp32s2 \ -i ./build/esp32.esp32.esp32s2/*.ino.elf
- Search font:
fc-list | rg $FONT
Enjoyed this? Support me via Monero, Bitcoin, Lightning, or Ethereum! More info.