command-line-tools

CLI toolkit

A curated list of command line tools and utilities for various tasks and applications.

Awesome Command Line Utilities

GitHub

429 stars
11 watching
42 forks
last commit: 4 months ago
Linked from 1 awesome list

awesomeawesome-listcommand-line-toolscurated-listknowledgelearning

Command line tools / CSV

xsv 10,430 7 months ago Fast CSV command line toolkit written in Rust
csvdiff 534 10 months ago Fast diff tool for comparing csv files
sc-im 4,893 2 months ago ncurses spreadsheet program for terminal

Command line tools / File system

RecoverPy 1,356 about 2 months ago Recover overwritten or deleted data
modd 2,814 over 1 year ago Flexible tool for responding to filesystem changes
reflex 3,411 about 1 year ago Run a command when files change

Command line tools / Fun

primitive 12,700 6 months ago reproducing images with geometric primitives

Command line tools / Games

love Framework to make 2D games in Lua

Command line tools / Git

fac 1,842 about 1 year ago Easy-to-use CUI for fixing git conflicts
git The stupid content tracker
hub 22,851 12 months ago Wrapper around Git to extend it with features
tig Text-mode interface for git

Command line tools / Go

dep 12,840 over 4 years ago Go dependency management tool
go Manage go source code
playgo 81 7 months ago Send .go file to the Go Playground
richgo 851 6 months ago Enrich outputs with text decorations

Command line tools / Java

ant Java based make tool
java-repl 1,334 over 6 years ago Read Eval Print Loop for Java

Command line tools / Lua

lua Lua interpreter
luajit Just-in-time compiler for the lua language

Command line tools / macOS

asr Apple Software Restore; copy volumes (e.g. from disk images)
defaults Access user's defaults
do-not-disturb 246 over 3 years ago Control the macOS feature
kexstat Display status of loaded kernel extensions
m-cli 9,703 5 months ago Swiss Army Knife for macOS
PlistBuddy Read and write values to plists
softwareupdate System software update tool
iStats 2,412 about 2 years ago Mac stats
mas 11,011 about 2 months ago Command line interface for the Mac App Store
time
switchaudio-osx 1,197 7 months ago Change the audio source for Mac OS X from the command line
displayplacer 3,842 8 months ago macOS command line utility to configure multi-display resolutions and arrangements. Essentially XRandR for macOS

Command line tools / Networking

neoss 172 about 2 months ago Socket statistics visualization and explanation tool for Unix systems
Catflap 142 almost 4 years ago Creates a listening TCP socket and passes its FD to a child process
curlie 2,892 about 2 months ago Power of curl, the ease of use of httpie
sshfs 6,092 2 months ago Network filesystem client to connect to SSH servers
sshuttle 11,853 about 2 months ago Transparent proxy server that works as a poor man's VPN. Forwards over ssh. Doesn't require admin. Works with Linux and MacOS. Supports DNS tunneling
telnet User interface to the TELNET protocol
bandwhich 10,180 about 2 months ago CLI utility for displaying current network utilization by process, connection and remote IP/hostname
httpie 34,188 3 months ago Modern, user-friendly command-line HTTP client for the API era
http-prompt 8,970 8 months ago Interactive command-line HTTP and API testing tool built on top of HTTPie with autocomplete, syntax highlighting, and more

Command line tools / Nix

nix-env Manipulate or query Nix user environments
nix-shell Start an interactive shell based on a Nix expression
nox Tools to make nix nicer to use

Command line tools / Package managers

brew Package manager for macOS
npm Package manager for javascript
yarn Package manager for javascript

Command line tools / Productivity

eureka 781 about 1 year ago CLI tool to input and store your ideas without leaving the terminal
cb 4,895 2 months ago Powerful clipboard manager for all platforms

Command line tools / Python

livepython 2,556 about 6 years ago Visually trace python code in real-time
rq 9,945 about 2 months ago Simple job queues for Python
tg 958 10 months ago Telegram terminal client
visa-cli 20 almost 3 years ago Visa Requirements terminal interface

Command line tools / Ruby

rbenv 16,183 about 2 months ago Groom your app’s Ruby environment
ruby-build 3,894 about 2 months ago Compile and install Ruby

Command line tools / Rust

project init 138 over 1 year ago Project templates in rust
rustup 6,213 about 1 month ago Rust toolchain installer

Command line tools / Static website engines

hugo Static site generator written in go
jekyll Static site generator written in ruby

Command line tools / Text editors

kakoune 10,024 about 2 months ago Modal editor with multi selections
helix 34,224 about 2 months ago A Kakoune / Neovim inspired editor, written in Rust
micro 25,313 about 2 months ago Modern and intuitive terminal-based text editor
emacs Extendable/customizable text editor
neovim 84,107 about 2 months ago Vim-fork focused on extensibility and usability
vim 36,910 about 2 months ago Modal text editor

Command line tools / Web

create-react-app 102,901 5 months ago Create React apps with no build configuration
preact 4,688 10 months ago Create preact app
up 8,803 11 months ago Deploy infinitely scalable serverless apps, apis, and sites in seconds to AWS
urlsup 15 over 2 years ago CLI to validate URLs in files

Command line tools / Logging

lnav 8,158 about 1 month ago Advanced log file viewer for the small-scale; Watch and analyze your log files from a terminal
red 1,478 4 months ago Terminal log analysis tools
goaccess 18,649 2 months ago Real-time web log analyzer and interactive viewer that runs in a terminal in nix systems or through your browser
angle-grinder 3,527 5 months ago Slice and dice logs on the command line
drep 89 over 2 years ago Grep with dynamic reloadable filter expressions. This allows filtering stream of logs/lines, while changing filters on the fly

Command line tools / Other

zenith 2,682 2 months ago Sort of like top or htop but with zoom-able charts, network, and disk usage
grcov 1,196 about 1 month ago Collects and aggregates code coverage information for multiple source files
wtf 15,932 6 months ago Personal information dashboard for your terminal
navi 15,273 2 months ago Interactive cheatsheet tool for the command-line
zoxide 23,350 2 months ago cd command that learns your habits
pastefile 10 4 months ago Create a file that contains the contents from the clipboard
ran 870 almost 2 years ago Simple static web server written in Go
watchexec 5,449 about 1 month ago Executes commands in response to file modifications
procs 5,217 about 2 months ago Modern replacement for ps written in Rust
termdash 2,737 4 months ago Terminal based dashboard
yq 12,469 about 2 months ago Portable command-line YAML processor
squeeze 17 about 3 years ago Enables to extract rich information from any text (raw, JSON, HTML, YAML, etc)
amber 864 about 2 months ago Code search / replace tool
Pueue 5,122 about 1 month ago Daemon for managing long running shell commands
mmv 750 almost 2 years ago Rename multiple files using your $EDITOR
jq 30,734 about 2 months ago Command-line JSON processor. ( )
jq in Go 3,365 about 2 months ago Pure Go implementation of jq
faq 440 4 months ago Format Agnostic jQ
gomi 317 over 1 year ago Trash can in CLI
jql 895 over 1 year ago Easy JSON Query Processor with a Lispy syntax in Go
linkchecker 900 4 months ago Check links in web documents or full websites
brok 425 almost 2 years ago Find broken links in text documents. ( )
broot 10,858 about 2 months ago New way to see and navigate directory trees
chars 183 about 2 months ago Display names and codes for various ASCII (and unicode) characters / code points
diskus 1,033 about 1 year ago Minimal, fast alternative to du -sh
glow 16,527 about 2 months ago Render markdown on the CLI, with pizzazz
dtool 371 7 months ago Collection of development tools
uni 807 5 months ago Query the Unicode database from the commandline, with good support for emojis
viu 2,614 about 2 months ago Command-line application to view images from the terminal written in Rust
tealdeer 4,554 3 months ago Very fast implementation of tldr in Rust
xcp 759 about 2 months ago Extended cp
pazi 162 about 1 month ago Fast autojump helper
cbf 27 almost 2 years ago Build custom CLI apps with only a json or yaml file
rga 8,385 about 2 months ago Ripgrep, but also search in PDFs, E-Books, Office documents, zip, tar.gz, etc
hunter 1,326 over 2 years ago Ranger-like file browser written in rust
ytop 2,152 over 4 years ago TUI system monitor written in Rust
noti 4,612 8 months ago Monitor a process and trigger a notification
ffsend 7,014 over 1 year ago Easily and securely share files from the command line. A fully featured Firefox Send client
adns Advanced, easy to use, asynchronous-capable DNS client library and utilities
advancecomp 224 7 months ago Collection of recompression utilities for your .ZIP archives, .PNG snapshots, .MNG video clips and .GZ files
ag 26,229 8 months ago Recursively search for pattern
Antibody 1,678 over 2 years ago Fastest shell plugin manager
aria2A 36,144 6 months ago Lightweight multi-protocol & multi-source, cross platform download utility
asciinema Terminal session recorder
asdf 22,236 about 2 months ago Extendable version manager with support for Ruby, Node.js, Elixir, Erlang & more
aspcud Solver for package dependencies
automake Automatically create Makefile.in's from Makefile.am's
basename Strip directory and suffix from filenames
bash GNU Bourne-Again SHell
camlp4 101 7 months ago Software system for writing extensible parsers for programming languages
ccat 3,168 over 2 years ago Colorizing
chroma 4,408 about 2 months ago General purpose syntax highlighter in pure Go
chrome-cli 2,620 7 months ago Control Google Chrome from the command line
cmake Cross-platform makefile generator
cowyo 925 over 1 year ago Feature rich wiki webserver for minimalists
croc 28,340 about 2 months ago Easily get things from one computer to another
ctop 15,641 7 months ago Container metric viewer
curl Transfer a URL
direnv 12,741 2 months ago Unclutter your .profile
dirname Strip last component from file name
docker Self-sufficient runtime for containers
entr Run arbitrary commands when files change. ( ) ( )
eisd 23 about 3 years ago Execute your favorite command in SubDirectories
fasd 5,903 over 4 years ago Quick access to files and directories
fd 34,453 about 2 months ago Simple, fast and user-friendly alternative to 'find'
ffmpeg Video converter
fkill 6,888 8 months ago Kill processes
friendly-find 214 over 2 years ago Usable replacement for find
fzf 66,191 about 2 months ago Command-line fuzzy finder
fzy 2,989 about 2 months ago Better fuzzy finder
gdbm Library of database functions that use extensible hashing and work similar to the standard UNIX dbm
gifski 4,870 3 months ago GIF encoder. Squeezes maximum possible quality from the awful GIF format
gotty 18,816 6 months ago Share your terminal as a web application
GraphicsMagick Swiss army knife of image processing
hask-replace 6 over 6 years ago Command-line tool to rename modules in Haskell projects
hexyl 9,220 3 months ago Command-line hex viewer
htttpie HTTP client
hyperfine 23,321 about 2 months ago Command-line benchmarking tool
temci 149 over 2 years ago Advanced benchmarking tool written in Python 3 that supports setting up an environment for benchmarking and the generation of visually appealing reports
imgur-screenshot 563 over 3 years ago Take screenshot selection, upload to Imgur. + more cool things
jq Lightweight and flexible command-line JSON processor
jump 1,805 8 months ago Helps you navigate faster by learning your habits
just 22,560 about 2 months ago Handy way to save and run project-specific commands
kubectl Kubernetes cluster manager
less Free, open-source file pager
license-up 103 about 1 year ago Create a license quickly for a given name
LicGD Open source code library for the dynamic creation of images by programmers
loc 2,340 9 months ago Count lines of code quickly
mackup 14,651 5 months ago Keep your application settings in sync (OS X/Linux)
make GNU make utility to maintain groups of programs
massren 1,357 about 2 months ago Easily rename multiple files using your text editor
mediumexporter 236 about 2 years ago Export medium.com articles to markdown
moreutils Growing collection of the unix tools that nobody thought to write long ago when unix was young
mycli 11,513 about 2 months ago Terminal Client for MySQL with AutoCompletion and Syntax Highlighting
ncdu Disk usage analyzer with an ncurses interface
neofetch 22,274 6 months ago Displays information about your operating system, software and hardware in an aesthetic and visually pleasing way
ninja Small build system with a focus on speed
nm Display name list (symbol table)
nmap Network mapper
pgcli 12,182 about 2 months ago Postgres CLI with autocompletion and syntax highlighting
pkg 24,328 about 1 year ago Package your node.js project into an executable
pngquant Command-line utility and a library for lossy compression of PNG images
pspg 2,517 4 months ago Postgres Pager
pv 222 almost 3 years ago Pipe Viewer
rclone Rsync for cloud storage
rename Renames files according to modification rules specified on the command line
scipy 13,197 about 1 month ago Open-source software for mathematics, science, and engineering
scons 2,120 about 1 month ago Software construction tool
skim 5,243 about 2 months ago Fuzzy Finder in rust
snallygaster 2,077 about 2 months ago Tool to scan for secret files on HTTP servers
spark Sparklines for your shell
spotify-ripper 77 almost 10 years ago Rip Spotify URIs to MP3 files
static-docs 293 about 5 years ago General-purpose library, purpose-built commands for various domains
stow 684 5 months ago Symlink farm manager program
svgcleaner 1,632 about 3 years ago Clean up your SVG files from the unnecessary data
tar Manipulate tape archives
tin-summer 339 over 1 year ago Find build artifacts that are taking up disk space
tokei 11,463 2 months ago Display statistics about your code. ( )
visidata 7,962 about 2 months ago Terminal spreadsheet multitool for discovering and arranging data
vsce Publish VS Code extensions
warp 1,621 almost 7 years ago Secure and simple terminal sharing
weather 963 almost 2 years ago Weather via the command line
wego 7,864 4 months ago Weather app for the terminal
wifi-password 4,455 8 months ago Get wifi pass
you-get 54,175 about 2 months ago Dumb downloader that scrapes the web
dust 9,068 3 months ago More intuitive version of du in rust
mdcat 2,226 about 2 months ago for Markdown
exa 23,694 4 months ago Replacement for ls written in Rust
sd 5,964 about 2 months ago Intuitive find & replace CLI
ack Grep-like text finder
alias Define or display aliases
apropos Search the manual page names and descriptions
awk Pattern-directed scanning and processing language
bc Arbitrary precision calculator language
cat Concatenate and print files
cd Change Directory
chmod Change file mode bits
cp Copy files and directories
cron Daemon to execute scheduled commands
cut Cut out selected portions of each line of a file
diff Compare files line by line
echo Write arguments to the standard output
env Set environment and execute command, or print environment
file Determine file type
find Walk a file hierarchy
gnuplot Generate two and three dimensional plots of data
grep File pattern searcher
head Output the first part of files
jobs Display status of jobs in the current session
join Join lines of two files on a common field
kill Send a signal to a process
killall Kill processes by name
ln Create symbolic links
ls List directory contents
lsof List open files
man Open manual pages
mv Move (rename) files
nice Execute a utility with an altered scheduling priority
nohup Run a command immune to hangups, with output to a non-tty
paste Merge lines of files
rm Remove directory entries
rmdir Remove empty directories
scp Secure copy (remote file copy program)
screen Screen manager
sed Stream editor
set Set or unset options and positional parameters
sort Put the lines of a text file in alphanumeric order
split Split a file into pieces
ssh Remote login
strings Print the strings of printable characters in files
tail Output the last part of files
top Display and update sorted information about processes
touch Change file timestamps
tr Translate or delete characters
tree List contents of directories in a tree-like format
type Describe a command
uniq Report or omit repeated lines
uptime Tell how long the system has been running
wc Print newline, word, and byte counts for each file
whoami Print effective userid
whois Client for the whois directory service
habitctl 367 10 months ago Minimalist command line tool you can use to track and examine your habits
jwt-cli 1,196 about 2 months ago Super fast CLI tool to decode and encode JWTs built in Rust
rtss 52 over 3 years ago Relative TimeStamps for Stuff
jc 7,955 2 months ago Serializes the output of popular gnu linux command line tools and file types to structured JSON output. This allows piping of output to tools like jq
psrecord 601 about 2 months ago Record the CPU and memory activity of a process
bottom 10,428 about 2 months ago Cross-platform graphical process/system monitor with a customizable interface and a multitude of features
undent 35 about 4 years ago Unindent text/code
misspell 1,353 8 months ago Correct commonly misspelled English words in source files
rargs 504 over 1 year ago Kind of xargs + awk with pattern-matching support
dupe-krill 187 over 1 year ago Fast file deduplicator
fcat 269 over 1 year ago Cat implementation in Rust. Only works on Linux
lorem 83 11 months ago Python lorem ipsum generator
miller 9,062 about 2 months ago Like awk, sed, cut, join, and sort for name-indexed data such as CSV, TSV, and tabular JSON
kickstart 404 about 2 months ago Scaffolding tool to get new projects up and running quickly
scc 6,855 about 2 months ago Very fast accurate code counter with complexity calculations and COCOMO estimates
gf 1,840 8 months ago Wrapper around grep, to help you grep for things
godu 535 8 months ago Simple golang utility helping to discover large files/folders
now 13,014 about 1 month ago Develop. Preview. Ship
nomino 578 about 2 months ago Batch rename utility for developers
hex 532 8 months ago Futuristic take on hexdump, made in Rust
url-parser 11 over 7 years ago Command-line URL parser, written in Go
luneta 62 over 1 year ago Interactive filter that can be easily composed within any script
spin 20 about 3 years ago Simple scaffolding tool
as-tree 463 over 3 years ago Print a list of paths as a tree of paths
wifi-password 87 9 months ago Quickly share Wi-Fi connection info
delta 24,778 about 2 months ago Syntax-highlighter for git and diff output
fzz 200 over 8 years ago Allows you to change the input of a single command interactively
github-stats 10 5 months ago Command-line tool to get the total traffic statistics of your GitHub repositories
map 223 over 4 years ago Map lines from stdin to commands
JQL 1,524 about 2 months ago JSON Query Language CLI tool built with Rust
jiq 921 about 2 years ago jid on jq - interactive JSON query tool using jq expressions
ijq Interactive jq tool. Like jqplay for the command line
rex Command line playground for regular expressions
PWatch 37 over 2 years ago Process Watcher
Rdfind 996 10 months ago Command line tool that finds duplicate files
bfs 999 about 1 month ago Breadth-first search for your files
Choose 1,886 4 months ago Human-friendly and fast alternative to awk and cut. ( )
yj 976 about 1 year ago Convert YAML <=> TOML <=> JSON <=> HCL
buku 6,546 about 2 months ago Browser-independent bookmark manager
twf 273 about 3 years ago Standalone tree view file explorer, inspired by fzf
hostblock 96 almost 5 years ago Simple terminal interface for blocking websites via the /etc/hosts file
ugrep 2,689 2 months ago Ultra fast grep with interactive query UI
sad 1,799 about 2 months ago CLI search and replace. Show you a nice diff of proposed changes before you commit them
wfh 9 almost 2 years ago Continuously watches your local directories and rsync them against a remote host
teip 577 12 months ago Select partial standard input and replace with the result of another command
Got 725 about 1 year ago Simple and fast concurrent downloader
duf 12,977 6 months ago Disk Usage/Free Utility
espanso 10,201 about 1 month ago Cross-platform Text Expander written in Rust
huniq 243 about 1 year ago Command line utility to remove duplicates from the given input. Note that huniq does not sort the input, it just removes duplicates
RustScan 14,903 about 1 month ago Modern Port Scanner
nat 1,273 over 3 years ago Complete replacement for the 'ls' command
csvq 1,526 6 months ago SQL-like query language for csv
gping 10,949 about 1 month ago Ping, but with a graph
FClones 2,006 8 months ago Efficient Duplicate File Finder
googler 6,112 about 3 years ago Google from the terminal
Proji 203 about 2 years ago Powerful cross-platform CLI project templating tool
dasel 7,248 about 2 months ago Allows you to query and modify data structures using selector strings
McFly 6,994 2 months ago Fly through your shell history
pbgopy 814 almost 3 years ago Copy and paste between devices
prism 169 about 1 year ago RTMP stream recaster / splitter
menyoki 630 about 2 months ago Screen{shot,cast} and perform ImageOps on the command line. ( )
projen 2,703 about 1 month ago Define and maintain complex project configuration through code
lsd 13,683 2 months ago Next gen ls command
ls-lint 1,748 about 1 month ago Extremely fast directory and filename linter - Bring some structure to your project directories. ( )
lychee 2,302 about 1 month ago Fast, async, resource-friendly link checker written in Rust
vgrep 669 about 2 months ago User-friendly pager for grep
urlhunter 1,512 about 1 year ago Recon tool that allows searching on URLs that are exposed via shortener services
rip 1,453 10 months ago Safe and ergonomic alternative to rm
Orderly 158 over 4 years ago Tool that provides ordered and controlled start, stop, restart and cleanup of a group of processes
Ruplacer 449 4 months ago Find and replace text in source files
Graphtage 2,387 9 months ago Semantic diff utility and library for tree-like files such as JSON, JSON5, XML, HTML, YAML, and CSV
sq 2,173 about 1 month ago Command line tool that provides jq-style access to structured data sources such as SQL databases, or document formats like CSV or Excel. ( )
yank 1,624 over 2 years ago Yank terminal output to clipboard. ( )
xplr 4,242 5 months ago Hackable, minimal, fast TUI file explorer, stealing ideas from nnn and fzf
Freshfetch 469 8 months ago Fresh take on Neofetch
rush 890 2 months ago Cross-platform command-line tool for executing jobs in parallel
so 1,362 5 months ago Terminal interface for Stack Overflow
gdu 4,048 about 2 months ago Disk usage analyzer with console interface written in Go
kalk 1,678 4 months ago Command line calculator that supports math-like syntax with user-defined variables, functions, derivation, integration, and complex numbers. ( ) ( )
fcp 766 6 months ago Significantly faster alternative to the classic Unix cp command
Renamer 54 over 3 years ago Command line utility to batch-rename files via your editor
Difftastic 21,365 about 1 month ago Syntax-aware structured diff tool. ( )
hck 702 about 2 months ago Drop in replacement for cut that can use a regex delimiter instead of a fixed string
calendarheatmap 401 about 2 months ago Calendar heatmap inspired by GitHub contribution activity
rnr 485 6 months ago Command-line tool to batch rename files and directories
Gaze 270 2 months ago Runs a command, right after you save a file
Czkawka 20,744 4 months ago Multi functional app to find duplicates, empty folders, similar images etc
Rustcat 733 6 months ago Netcat Alternative in Rust
s 2,356 3 months ago Web search from the terminal. Just opens in your browser
Sweep 179 7 months ago Reduce the disk usage of your projects by removing dependencies & builds
Viddy 4,829 2 months ago Modern watch command. Time machine and pager etc
tree-grepper 301 about 1 month ago Like grep, but uses tree-sitter grammars to search
qq 165 over 6 years ago Select stdin with query
todocheck 428 over 1 year ago Static code analyzer for annotated TODO comments
TV 2,065 10 months ago Cross-platform CSV pretty printer made to maximize viewer enjoyment. ( )
anew 1,420 about 1 year ago Tool for adding new lines to files, skipping duplicates
hors 241 10 months ago Instant coding answers via the command line
dua 4,235 about 2 months ago View disk space usage and delete unwanted data, fast
conan 48 5 months ago Find clue about the type of the file
alt 139 8 months ago Find alternate files
fzwiki 84 over 2 years ago Command with fzf-like UI to quickly search Wikipedia articles and open it in your browser
Untree 95 about 2 years ago Converts tree diagrams produced by tree back into directory file structures
IDNT 103 almost 3 years ago Batch software uninstall
Awesome CLI apps 15,535 2 months ago
Awesome command line apps 3,971 over 3 years ago
Awesome shell 33,372 5 months ago
Structured text tools 6,984 5 months ago List of text-based file formats and command line tools for manipulating each

Backlinks from these awesome lists:

More related projects: