Skip to content

A curated list of awesome command-line frameworks, toolkits, guides and gizmos. Inspired by awesome-php. With repository stars⭐ and forks🍴

License

Notifications You must be signed in to change notification settings

Correia-jpv/fucking-awesome-shell

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

 β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•— β–ˆβ–ˆβ•—    β–ˆβ–ˆβ•—β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•—β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•— β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•— β–ˆβ–ˆβ–ˆβ•—   β–ˆβ–ˆβ–ˆβ•—β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•—
β–ˆβ–ˆβ•”β•β•β–ˆβ–ˆβ•—β–ˆβ–ˆβ•‘    β–ˆβ–ˆβ•‘β–ˆβ–ˆβ•”β•β•β•β•β•β–ˆβ–ˆβ•”β•β•β•β•β•β–ˆβ–ˆβ•”β•β•β•β–ˆβ–ˆβ•—β–ˆβ–ˆβ–ˆβ–ˆβ•— β–ˆβ–ˆβ–ˆβ–ˆβ•‘β–ˆβ–ˆβ•”β•β•β•β•β•
β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•‘β–ˆβ–ˆβ•‘ β–ˆβ•— β–ˆβ–ˆβ•‘β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•—  β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•—β–ˆβ–ˆβ•‘   β–ˆβ–ˆβ•‘β–ˆβ–ˆβ•”β–ˆβ–ˆβ–ˆβ–ˆβ•”β–ˆβ–ˆβ•‘β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•—
β–ˆβ–ˆβ•”β•β•β–ˆβ–ˆβ•‘β–ˆβ–ˆβ•‘β–ˆβ–ˆβ–ˆβ•—β–ˆβ–ˆβ•‘β–ˆβ–ˆβ•”β•β•β•  β•šβ•β•β•β•β–ˆβ–ˆβ•‘β–ˆβ–ˆβ•‘   β–ˆβ–ˆβ•‘β–ˆβ–ˆβ•‘β•šβ–ˆβ–ˆβ•”β•β–ˆβ–ˆβ•‘β–ˆβ–ˆβ•”β•β•β•
β–ˆβ–ˆβ•‘  β–ˆβ–ˆβ•‘β•šβ–ˆβ–ˆβ–ˆβ•”β–ˆβ–ˆβ–ˆβ•”β•β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•—β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•‘β•šβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•”β•β–ˆβ–ˆβ•‘ β•šβ•β• β–ˆβ–ˆβ•‘β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•—
β•šβ•β•  β•šβ•β• β•šβ•β•β•β•šβ•β•β• β•šβ•β•β•β•β•β•β•β•šβ•β•β•β•β•β•β• β•šβ•β•β•β•β•β• β•šβ•β•     β•šβ•β•β•šβ•β•β•β•β•β•β•
β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•—β–ˆβ–ˆβ•—  β–ˆβ–ˆβ•—β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•—β–ˆβ–ˆβ•—     β–ˆβ–ˆβ•—
β–ˆβ–ˆβ•”β•β•β•β•β•β–ˆβ–ˆβ•‘  β–ˆβ–ˆβ•‘β–ˆβ–ˆβ•”β•β•β•β•β•β–ˆβ–ˆβ•‘     β–ˆβ–ˆβ•‘
β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•—β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•‘β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•—  β–ˆβ–ˆβ•‘     β–ˆβ–ˆβ•‘
β•šβ•β•β•β•β–ˆβ–ˆβ•‘β–ˆβ–ˆβ•”β•β•β–ˆβ–ˆβ•‘β–ˆβ–ˆβ•”β•β•β•  β–ˆβ–ˆβ•‘     β–ˆβ–ˆβ•‘
β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•‘β–ˆβ–ˆβ•‘  β–ˆβ–ˆβ•‘β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•—β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•—β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•—
β•šβ•β•β•β•β•β•β•β•šβ•β•  β•šβ•β•β•šβ•β•β•β•β•β•β•β•šβ•β•β•β•β•β•β•β•šβ•β•β•β•β•β•β•

Awesome Shell Awesome

A curated list of awesome command-line frameworks, toolkits, guides and gizmos. Inspired by awesome-php. This awesome collection is also available on 🌎 Unix-Shell.ZEEF.com.

Shells

Choose your base shell.

  • 🌎 bash - GNU Project's shell (Bourne Again SHell)
  • 🌎 elvish - Friendly, expressive shell features like anonymous functions and data structures
  • 🌎 es - The extensible shell, based on Plan 9's    281⭐     26🍴 rc) shell
  • 🌎 fish - Smart and user-friendly command line shell
  •   1503⭐    143🍴 ion) - A modern system shell that features a simple, yet powerful, syntax. It is written entirely in Rust.
  •    579⭐    155🍴 ksh93) - Korn Shell
  •    218⭐     36🍴 mksh) - MirBSD Korn Shell
  •   1568⭐     27🍴 murex) - A smarter shell and scripting environment with advanced features designed for usability, safety and productivity (eg smarter DevOps tooling)
  •   1487⭐     44🍴 ngs) - Fully featured scripting language created specifically for Ops. REPL is being developed.
  •  34476⭐   1780🍴 nushell) - A modern shell written in Rust
  •    373⭐     39🍴 oksh) - Portable OpenBSD ksh
  • 🌎 osh - Bash compatible, with new/modern Unix shell language called Oil
  • 🌎 pdksh - Public domain Korn shell
  • 🌎 powershell a cross-platform task automation and configuration management framework, consisting of a command-line shell and scripting language
  •    160⭐     10🍴 shell++) - Friendly and modern functional and object oriented shell script language
  •     44⭐      3🍴 shenv) - Simple shell version management
  • 🌎 tcsh - C shell with file name completion and command line editing
  • 🌎 xonsh - Python-ish, BASHwards-looking shell language and command prompt
  •    432⭐     36🍴 yash) - A POSIX-compliant command line shell with built-in support for completion and prediction based on command history
  • 🌎 zsh - Powerful shell with scripting language

Command-Line Productivity

Search, bookmarks, multiplexing, and other tools that make your terminal experience more productive.

  •    268⭐      8🍴 AdvancedNewFile) - Fast creation of files and directories in a recursive way. Inspired by the Vim plugin.
  •  26427⭐   1432🍴 ag) - Super fast string search through a directory hierarchy
  •    582⭐     36🍴 aliases) - Contextual, dynamic, organized aliases for bash
  •   1053⭐     15🍴 arttime) - Beauty of text art meets functionality of clock, timer, pomodoro++ time manager
  •   5802⭐    260🍴 autoenv) - Directory-based environments.
  •    160⭐      4🍴 await) - single binary that run list of commands in parallel and waits for their termination
  •    717⭐     37🍴 bartib) - A simple timetracker for the command line. It saves a log of all tracked activities as a plaintext file and allows you to create flexible reports.
  •   1275⭐     84🍴 bashhub) - ☁️ Bash history in the cloud. Indexed and searchable.
  •   1734⭐    119🍴 boilr) - A blazingly fast CLI tool for creating projects from boilerplate templates.
  •   1293⭐    116🍴 boom) - Store links and snippets in the command line
  •   1603⭐     56🍴 borg) - A terminal based search engine for bash commands
  •  11183⭐    237🍴 broot) - A better way to navigate directories
  •  17346⭐    429🍴 browsh) - The modern text-based browser
  •   6658⭐    297🍴 Buku) - Powerful command-line bookmark manager
  • 🌎 byobu - Text-based window manager and terminal multiplexer
  •    528⭐     21🍴 cod) β€” A completion daemon for shell that learns when you invoke --help commands
  •     81⭐      8🍴 CloudClip) - Your own clipboard in the cloud, copy and paste text with gist between different systems
  •   3035⭐    142🍴 ddgr) - DuckDuckGo from the terminal
  •   2546⭐    112🍴 desk) - A lightweight workspace manager for the shell
  •  13283⭐    668🍴 direnv) - An environment switcher for the shell, compare with autoenv
  •   2848⭐    121🍴 dnote) - A simple command line notebook with multi-device sync and web interface
  •      ?⭐      ?🍴 eureka) - πŸ’‘ CLI tool to input and store your ideas without leaving the terminal
  •   5915⭐    227🍴 fasd) - Command-line productivity booster, offers quick access to files and directories
  •  37215⭐    860🍴 fd) - A simple, fast and user-friendly alternative to find.
  •     43⭐      3🍴 foxy) - Plain text bookmarks for Firefox and surf browsers.
  •   4152⭐     88🍴 fselect) - Find files with SQL-like queries.
  •    652⭐     19🍴 funky) - Extends functionality of shell functions making them more powerful and flexible.
  •    535⭐     27🍴 fz) - Seamless fuzzy tab completion for z
  •  68961⭐   2483🍴 fzf) - A command-line fuzzy finder
  •    657⭐     24🍴 gitmux) - Show Git status in Tmux status bar
  •   6125⭐    531🍴 googler) - Google Search, Google Site Search, Google News from the terminal
  •     48⭐      3🍴 googlr) - Command line tool that lets you search Google from your terminal.
  •    707⭐     49🍴 has) - has helps you check presence of various command line tools and their versions on path
  •   5745⭐    151🍴 how2) - how2 finds the simplest way to do something in a unix shell. It's like man, but you can query it in natural language.
  •  15617⭐    523🍴 navi) - An interactive cheatsheet tool for the command-line
  •    475⭐     58🍴 hhighlighter) - Colorize words in a command output
  •   1284⭐     62🍴 hr) - <hr /> for your terminal
  •    360⭐     23🍴 hss) - An interactive parallel ssh client featuring autocomplete and asynchronous execution
  •   4192⭐    236🍴 hstr) - Bash History Suggest Box
  •   1791⭐    126🍴 k) - k is a Zsh script to make directory listings more readable, adding Git status, fileweight colors and rotting dates
  •     22⭐      5🍴 k alias) - get kool aliases (and more) working with a simple one-liner
  •   8054⭐    332🍴 lf) - Terminal file manager written in Go, inspired by ranger
  •     43⭐      3🍴 lf.sh) - Quickly search files with fewer typings and do many more (grepping, copying path to clipboard, etc)
  •    216⭐      5🍴 lowcharts) - Draw low-resolution graphs in terminal
  • 🌎 Lmod - Lua-based Environment Modules that enhances Tcl-based modules while being backward compatible (compare to modules)
  •    677⭐     28🍴 loop) - Write and control complex loops with as one-liners
  •   2064⭐    107🍴 marker) - Bookmark your shell commands
  •      ?⭐      ?🍴 mackup) - Keep your application settings in sync (OS X/Linux)
  •   7176⭐    181🍴 mcfly) - Fly through your shell history. Great Scot!
  • modules - Classical Tcl-based Environment Modules managing the shell environment (compare to Lmod, direnv, and autoenv)
  •  19888⭐    766🍴 nnn) - File browser and disk usage analyzer with excellent desktop integration
  •     92⭐      7🍴 ok-sh) - Do you work on many different projects? And in each project, are there commands you use that are specific to that project? You need a .ok file.
  • 🌎 parallel - Build and execute shell command lines from standard input in parallel
  • 🌎 pass - Manage passwords from the command line with GPG encryption and optional git integration.
  •   5155⭐    278🍴 pathpicker) - Accepts inputs like grep, searches, git etc; allows selecting files from the result of the input, which you can then open or provide as argument to a command.
  •    386⭐     19🍴 pdd) - Tiny date, time diff calculator with timers
  •   3320⭐    145🍴 percol) - Adds flavor of interactive filtering to the traditional pipe concept of UNIX shell
  •     70⭐      7🍴 q) - Vim like macro registers for your Bash and Zsh Shell
  •    579⭐     22🍴 qfc) - File-completion widget for Bash and Zsh
  •   1025⭐     20🍴 resh) - Contextual shell history for Zsh and Bash
  •  51336⭐   2092🍴 rg) - ripgrep is a line oriented search tool that combines the usability of The Silver Searcher with the raw speed of GNU grep
  • 🌎 screen - GNU terminal multiplexer
  •    114⭐      1🍴 shell-history) - Visualize your shell usage with Highcharts
  •    443⭐     14🍴 SHML) - Style framework for the terminal (Shell Markup Language)
  •    309⭐     34🍴 slugify) - Command that converts filenames and directories to a web friendly format
  •    296⭐     24🍴 sman) - πŸ› A command-line snippet manager
  •   6020⭐    290🍴 spark) - ▁▂▃▅▂▇ in your shell
  •    353⭐      6🍴 spark.fish) - ▁▂▃▅ Sparkline Generator
  •    266⭐     11🍴 sheet) - Text snippets for the command line
  •    935⭐     44🍴 spot) - Tiny file search utility
  •     83⭐      5🍴 snips) - Command line tool to manage snippets of code.
  •    633⭐    149🍴 sqlline) - Shell for issuing SQL to relational databases via JDBC (multiline, completion, highlighting, dialect support)
  •   1184⭐    130🍴 sshfs) - A tool for mounting remote file systems over SSH
  •    161⭐     22🍴 sudocabulary) - Learn English Vocabulary from your terminal
  • 🌎 surfraw - browse specific site and search the web from your terminal without browser.
  •     21⭐      1🍴 task-manager) - Execute all your scripts with just two or three keystrokes.
  •    200⭐      9🍴 td-cli) - A todo command line manager to organize and manage your todos across multiple projects.
  •   1738⭐     39🍴 tere) - A faster alternative to cd + ls
  •  91184⭐   3659🍴 thefuck) - Fix common shell mistakes by using an easy to remember command
  •    718⭐     49🍴 tldr) - A fully-functional bash client for tldr, simplified and community-driven man pages
  • 🌎 tmux - Amazing terminal multiplexer
  •    185⭐      5🍴 undollar) - undollar bites the dollar sign off the tip of the command you just pasted into your terminal
  •   9294⭐    362🍴 usql) - Universal command-line interface for SQL databases.
  •    449⭐     39🍴 v) - z for vim.
  •   3642⭐    141🍴 wemux) - Multi-User Tmux Made Easy
  •   3763⭐    207🍴 xiki) - Makes the shell console more friendly and powerful
  •   4337⭐     78🍴 xplr) - A hackable, minimal, fast TUI file explorer
  •  10597⭐    329🍴 xsv) - a fast CSV command line toolkit written in Rust
  •   5554⭐    112🍴 xxh) - Bring your favorite shell wherever you go through the SSH.

Directory Navigation

  •    114⭐     10🍴 aliasme) - alias helper to change directory quickly
  •  16475⭐    710🍴 autojump) - A cd command that learns - easily navigate directories from the command line
  •   1913⭐    295🍴 bashmarks) - Directory bookmarks for the shell
  •    923⭐     65🍴 bd) - Quickly go back to a parent directory
  •    365⭐     20🍴 commacd) - A faster way to move around in Bash
  •   2614⭐    111🍴 enhancd) - πŸš€ A next-generation cd command with an interactive filter
  •    887⭐     65🍴 goto) - A shell utility for navigation to aliased directories supporting auto-completion
  •   1829⭐     60🍴 jump) - Jump helps you navigate your file system faster by learning your habits.
  •     22⭐      1🍴 lazy-cd) - Simple bash commands for bookmarked navigation of the file system, complete with bash-completion.
  •    177⭐     10🍴 up) - Ascend directories by name or count; for bash, zsh, and fish.
  •  16591⭐   1174🍴 z) - z is the new j, yo
  •   3058⭐    143🍴 z.lua) - A new cd command that helps you navigate faster by learning your habits
  •  25602⭐    608🍴 zoxide) - A faster way to navigate your filesystem, written in Rust
  •    107⭐      5🍴 zpyi) - Python in Zsh - Easy python scripting in shell

Customization

Custom prompts, color themes, etc.

  •    156⭐     29🍴 aphrodite-terminal-theme) β€” Minimalistic Aphrodite theme (prompt) for sexy terminals that works in bash, fish and zsh
  •    439⭐     41🍴 base16-builder) - Base16-Builder
  •    190⭐     44🍴 bash-full-of-colors) - Powerful prompt with screen, tmux, git support and many more
  •   6775⭐    969🍴 bash-git-prompt) - An informative and fancy Bash prompt for Git users
  •    905⭐    169🍴 bash-powerline) - Powerline-style Bash prompt in pure Bash script
  •   1558⭐    121🍴 bashstrap) - A quick way to spruce up OSX terminal
  •   2833⭐    382🍴 bullet-train-oh-my-zsh-theme) - πŸš„ An oh-my-zsh shell theme based on the Powerline Vim plugin
  •   1560⭐     70🍴 emojify) Emoji on the command line 😱
  • 🌎 flatui-terminal-theme - Nicer colors for terminal
  •    959⭐     97🍴 geometry) - A minimal ZSH theme where any function can be added to the left prompt or (async) right prompt on the fly.
  •    326⭐     97🍴 git-prompt) - Bash prompt with Git, SVN and HG modules
  •     74⭐      6🍴 gittify) - A colorful Bash prompt + customized Git aliases
  •   9618⭐    612🍴 Gogh - Color Scheme) - Color Scheme for Gnome Terminal
  •   4544⭐    422🍴 liquidprompt) - A full-featured & carefully designed adaptive prompt for Bash & Zsh
  •    106⭐     10🍴 mysql-colorize) - Colorization for mysql comand-line client
  •   3669⭐    287🍴 oh-my-git) - An opinionated git prompt for bash and zsh
  • 🌎 oh-my-posh - Prompt theme engine for any shell and platform written in go.
  •    187⭐     13🍴 polyglot) - An informative Git prompt that works in bash, zsh, ksh, mksh, pdksh, oksh, dash, yash, busybox sh, and osh
  •  48563⭐   2268🍴 powerlevel10k) - Super flexible awesome powerline ZSH theme
  •   1143⭐    154🍴 sexy-bash-prompt) - Bash prompt with colors, Git statuses, and Git branches
  • 🌎 starship - Fast, customisable, cross-shell prompt written in rust
  •   1053⭐    241🍴 synth-shell) - Greeter with a customizable status report and a fancy bash prompt

For Developers

Command-line development, version control, and deployment.

  • 🌎 1Password SSH Agent - Authenticate Git and SSH workflows with biometric unlock using 1Password
  • 🌎 ack - A grep-like search tool optimized for source code.
  •    682⭐     14🍴 add-gitignore) - Interactive CLI that generates a .gitignore for your project based on your needs.
  •    649⭐     40🍴 bcal) - Byte CALculator for storage conversions and calculations
  •    666⭐     28🍴 bitwise) - Terminal based interactive bit manipulator in curses.
  •  12317⭐    745🍴 bocker) - Docker implemented in 100 lines of bash
  •  20510⭐   1043🍴 cloc) - Count Lines of Code
  •     47⭐      3🍴 doclt) - A command line interface to Digital Ocean
  •  30178⭐   1959🍴 dokku) - Docker powered mini-Heroku. The smallest PaaS implementation you've ever seen.
  •   4635⭐    140🍴 forgit) - Utility tool for git taking advantage of fuzzy finder fzf.
  •   1048⭐     93🍴 git-extra-commands) - Many Git extra utilities. Churn, cut-branch, improved-merge and many more.
  •  17554⭐   1210🍴 git-extras) - Git utilities -- repo summary, repl, changelog population, author commit percentages and more
  •   3345⭐    253🍴 git-open) - Type git open to open the GitHub page or website for a repository in your browser
  •   6490⭐    261🍴 git-quick-stats) - Git quick statistics is a simple and efficient way to access various statistics in git repository.
  •    385⭐     43🍴 git-semver) - Git plugin for easing semantic versioning and changelog validation
  •    734⭐     82🍴 git-sh) - A customized Bash environment suitable for Git work
  •   1706⭐     72🍴 gita) - A command-line tool to manage multiple git repos.
  •  22912⭐   2199🍴 hub) - hub helps you win at git.
  •  24526⭐    527🍴 just) - Task runner for saving and running project-specific commands.
  •     22⭐      2🍴 licins) - Insert commented software licenses into source code.
  •    372⭐     22🍴 mkdkr) - Makefile + Docker = CI Pipeline
  • 🌎 mr - Multiple Repository management tool
  •    700⭐     15🍴 nve) - Run any command on specific Node.js versions.
  •   3939⭐    281🍴 overcommit) - A fully configurable and extendable Git hook manager
  • 🌎 pre-commit - A framework for managing and maintaining multi-language pre-commit hooks
  •   4128⭐    388🍴 rebound) - Instantly browse Stack Overflow results in your terminal when you get a compiler error
  •    360⭐     39🍴 repren) - Command-line search-and-replace and file-renaming swiss army knife
  •   6157⭐    220🍴 slap) - Sublime-like terminal-based text editor that runs on Node.js
  •    568⭐     37🍴 shipit) - Minimalistic SSH deployment
  •    155⭐      8🍴 starring) - Automatically star the npm-packages that you are using on GitHub.
  •    601⭐     33🍴 tag) - Instantly jump to your ag matches.
  • 🌎 trunk - Blazingly fast meta code checker and formatter
  •     63⭐     12🍴 vmn) - git-based automatic versioning and state recovery solution agnostic to language or architecture
  •    353⭐      6🍴 wipe-modules) - A little agent that removes the node_modules folder of non-active projects

System Utilities

OS-related tools, including system administration, system debugging, and file and process management.

  • 🌎 atop - ASCII full-screen performance monitor that is capable of reporting the activity of all processes
  •  51900⭐   1287🍴 bat) - A cat clone with wings
  •   1238⭐     99🍴 bmon) - Real-time network bandwidth monitor and rate estimator with human-friendly visual output
  •  23903⭐    721🍴 btop) - Linux/OSX/FreeBSD resource monitor
  •    199⭐     18🍴 catcli) - The command line catalog tool for your offline data
  •   3183⭐    120🍴 ccat) - ccat is the colorizing cat. It works similar to cat but displays content with syntax highlighting.
  •  23861⭐    660🍴 exa) - A modern version of ls.
  •   8652⭐    312🍴 progress) - Linux tool to show progress for cp, rm, dd, and more...
  •   1122⭐    262🍴 stronghold) - Easily configure MacOS security settings from the terminal.
  •  28139⭐   1567🍴 glances) - Glances an Eye on your system
  •  19164⭐   1129🍴 goaccess) - GoAccess is a real-time web log analyzer and interactive viewer that runs in a terminal in *nix systems.
  •   1772⭐    108🍴 hblock) - Hosts-file based adblocker
  •     98⭐     18🍴 histstat) - History for netstat
  •   5863⭐    581🍴 htop) - A ncurses based interactive process viewer which aims to be a better top
  • 🌎 lnav - An advanced log file viewer for the small-scale
  •    149⭐     23🍴 logdissect) - CLI utility and Python API for analyzing log files and other data.
  •    510⭐     46🍴 ls++) - Colorized ls on steroids
  •  14166⭐    447🍴 lsd) - LSDeluxe, rewrite of GNU ls with lot of added features like colors, icons, tree-view and more formatting options.
  •    528⭐     13🍴 lsp) - An improved ls, with file descriptions in plain language and intelligent file grouping
  •   1821⭐     69🍴 maza) - Local ad blocker. Like Pi-hole but local and using your operating system.
  •   2862⭐    350🍴 mtr) - The functionality of the 'traceroute' and 'ping' programs in a single network diagnostic tool.
  • 🌎 ncdu - NCurses Disk Usage
  •    423⭐    185🍴 nmtui) - Text User Interface for controlling NetworkManager
  •   1118⭐    133🍴 powertop) - Battery/Power usage and device stats monitoring command-line tool, with tune-up options.
  •   1227⭐     78🍴 prettyping) - Making the output of ping prettier, more colorful, more compact, and easier to read.
  •     77⭐      7🍴 procdog) - Lightweight command-line control of long-lived processes like servers
  •    417⭐     50🍴 quick-secure) - Quickly secure and harden UNIX/Linux systems
  •     32⭐      0🍴 rng) - Copy range of lines from file or stdin to stdout.
  •   1837⭐     72🍴 tiptop) - Graphical command-line system monitor.
  •     69⭐      6🍴 wifi-wand) - a Ruby command line application for managing WiFi on MacOS (install by gem install wifi-wand)
  •   1127⭐     45🍴 xiringuito) - SSH-based "VPN for poors"

Downloading and Serving

Self-hosted, lightweight servers and networking tools written in shell scripts.

  •  37161⭐   3675🍴 aria2) - aria2 is a lightweight multi-protocol & multi-source, cross platform download utility operated in command-line. It supports HTTP/HTTPS, FTP, BitTorrent and Metalink
  •    861⭐     44🍴 balls) - Bash on Balls
  •   1522⭐    200🍴 bashttpd) - A web server written in Bash
  •    311⭐     24🍴 bashhub-server) - Private cloud shell history. Open source server for bashhub
  •   1034⭐     78🍴 bitpocket) - "DIY Dropbox" or "2-way directory (r)sync with proper deletion"
  •   6582⭐   1074🍴 Dropbox-Uploader) - Dropbox Uploader is a Bash script which can be used to upload, download, list or delete files from Dropbox
  •  35135⭐   3698🍴 httpie) - HTTPie is a command line HTTP client, a user-friendly cURL replacement
  •   4073⭐    121🍴 HTTPLab) - The interactive web server, let you inspect HTTP requests and forge responses.
  •    615⭐     28🍴 Kapow!) - If you can script it, you can HTTP it.
  •    177⭐     11🍴 ngincat) - Tiny Bash HTTP server using netcat
  •   2649⭐    142🍴 resty) - Little command line REST client that you can use in pipelines
  •   1392⭐    138🍴 shell2http) - HTTP-server to execute shell commands. Designed for development, prototyping or remote control
  •    135⭐     13🍴 tshare) - File sharing from commandline.
  •    211⭐      8🍴 vesper) - 🍸Vesper is a HTTP framework for Bash/Unix Shell
  •   6225⭐    102🍴 xh) - Friendly and fast tool for sending HTTP requests
  • 105716⭐   8298🍴 yt-dlp) - Command-line program to download videos from YouTube.com and other video sites

Multimedia and File Formats

Tools for handling video and audio files.

  •    109⭐     17🍴 adb-export) - Export Android content providers to CSV format
  •   1042⭐    584🍴 Android-Kitchen) - A text-based kitchen for Android ROM customization. Uses shell scripts and works with Cygwin/OS X/Linux
  •  13336⭐   1863🍴 Beets) - Music library manager and MusicBrainz tagger
  •   5734⭐    479🍴 cmus) - Cross-platform cli audio player.
  •   7389⭐    144🍴 dasel) - Query and update data structures using selectors from the command line. Comparable to  31453⭐   1616🍴 jq) /   2727⭐     84🍴 yq) but supports JSON, YAML, TOML and XML with zero runtime dependencies.
  •    212⭐     14🍴 dzr) - Cross-platform Deezer.com audio player.
  •  19314⭐    442🍴 fx) - Command-line JSON processing tool by anononymus JavaScript functions
  •    556⭐     31🍴 gifgen) - Simple high quality GIF encoding
  •    770⭐    102🍴 image-scraper) - A cool command line image scraper with a lot of features.
  •   1063⭐     52🍴 imgp) - Blazing fast batch image resizer and rotator
  •   8105⭐    219🍴 jc) - Convert command output, file-types, and common strings to JSON or YAML for easier use in scripts.
  •   4720⭐    156🍴 jo) - A small utility to create JSON objects from command-line arguments.
  •  31453⭐   1616🍴 jq) - Sed for json data. You can use it to slice and filter and map and transform structured data
  •    378⭐     15🍴 korkut) - Quick and simple image processing at the command line.
  •    417⭐     12🍴 library) - Create SQLITE databases for folders of music, video, images, or online media. Play and track media like Plex but a CLI-only interface with many sorting options.
  • 🌎 mpv - Lets you play most audio and video formats (using ASCII characters) in the shell as well as in a GUI.
  •     86⭐      7🍴 nehm) - Console tool, which downloads, sets IDv3 tags and adds to your iTunes (if you use it) your SoundCloud likes in convenient way
  •   1782⭐    264🍴 PiCAST) - PiCAST turns your $35 Raspberry Pi in to a Chromecast like Device
  •      ?⭐      ?🍴 sejda) - Command line manipulation of PDF documents (split, merge, rotate, convert to jpg, extract text, etc)
  •   8125⭐    289🍴 visidata) - A terminal spreadsheet multitool for exploring and arranging data (csv/json/xml/xls/yaml/etc)
  •      ?⭐      ?🍴 xidel) - Cli tool to filter, map and create HTML/XML/JSON data with (Turing-complete) XPath and XQuery.
  • xmlstarlet - Old but powerful tool for command-line XML formatting, filtering, and manipulation.
  •  13075⭐    632🍴 yq) - yq is a portable command-line YAML processor

Applications

Command line-based applications or command line access to existing services.

  •   1891⭐    146🍴 ansiweather) - Weather in your terminal, with ANSI colors and Unicode symbols
  •   4976⭐    262🍴 awless) - A powerful, innovative and small surface CLI to manage AWS.
  •   1700⭐    234🍴 bashblog) - A Bash script that handles blog posting
  •   5856⭐    122🍴 carbon-now-cli) - 🎨 Beautiful images of your code β€” from right inside your terminal.
  •     75⭐      3🍴 choosealicense-cli) - Choose an OSS license from the comfort of your terminal
  •   4152⭐    327🍴 cointop) - The fastest and most interactive terminal based UI application for tracking cryptocurrencies
  •    848⭐     50🍴 dstask) - Single binary terminal-based TODO manager with git-based sync + markdown notes per task
  •   4902⭐    321🍴 editly) - Command line video editor
  •    394⭐     35🍴 facebook-cli) - Facebook command line tool
  •   1477⭐    140🍴 fanyi) - Translate English to Chinese in terminal
  •   3391⭐    319🍴 gcalcli) - Google Calendar command line interface
  •   2102⭐    327🍴 geeknote) - Command line evernote client
  •   3998⭐    168🍴 haxor-news) - Browse Hacker News like a haxor
  •    464⭐     18🍴 hn-cli) - Browse Hacker News from the comfort of your Terminal
  •    320⭐     23🍴 iponmap) - Draw point on world map using ip address
  •     66⭐      2🍴 isitup) - Check whether a website is up or down
  •   6659⭐    528🍴 jrnl) - A simple command line journal application that stores your journal in a plain text file
  •    908⭐     55🍴 kanban.bash) - commandline asciii kanban board for minimalist productivity bash hackers (csv-based)
  •   5499⭐    511🍴 ledger) - Command line accounting
  •     38⭐      4🍴 licen) - Generate your license. Yet another lice, but implement with Jinja2 and docopt
  •     36⭐      1🍴 md2png) - Convert markdown to PNG image
  •    212⭐     17🍴 moviemon) - Everything about your movies within the command line.
  •    664⭐     22🍴 nomino) - Batch rename utility using regex, sort and map file options.
  •    561⭐     24🍴 pcalc) - Calculator made for programmers working with multiple number representations, sizes, and overall close to the bits.
  •    506⭐     35🍴 pockyt) - Read, Manage, and Automate your 🌎 Pocket collection.
  •     97⭐      8🍴 pushblast) - Get PushBullet notifications when a shell program exits
  •    235⭐     42🍴 pushbullet-bash) - Bash interface to the PushBullet API
  •  16033⭐    897🍴 ranger) - A console file manager with VI key bindings.
  •   4650⭐    280🍴 Reddit Terminal Viewer) - Browse Reddit from your terminal
  •   5269⭐    283🍴 SAWS) - A Supercharged AWS CLI
  •   9036⭐    384🍴 taskbook) - Tasks, boards & notes for the command-line habitat
  • 🌎 taskwarrior - A command-line TODO list manager
  •    892⭐     37🍴 terjira) - Command line power tool for Jira
  •   5130⭐    281🍴 ticker) β€” Terminal stock ticker with live updates and position tracking
  •     27⭐      3🍴 vl) - URL link checker on text documents
  •   8057⭐    493🍴 wego) - Weather app for the terminal
  •    389⭐     20🍴 whales) - A tool to automatically dockerize your applications
  •    168⭐     11🍴 whereami) - Get your geolocation information from the CLI
  •  25647⭐   1130🍴 wttr.in) - β›… The right way to check the weather (curl wttr.in)

Games

All work and no play is a cruddy way to spend your day.

  •    899⭐    207🍴 bash2048) - Bash implementation of 2048 game
  •     63⭐     28🍴 minesweeper) - Bash implementation of minesweeper
  •    339⭐     59🍴 nudoku) - ncurses based sudoku game written in C
  •    737⭐     37🍴 piu-piu) - Horizontal scroller game in bash with multiplayer mode!
  •    543⭐     40🍴 sedtris) - Tetris in sed
  •     45⭐      4🍴 sed-scripts) - Arkanoid and Sokoban written using sed
  • 🌎 SHTAP - Reusable text adventure engine for Bash 4
  •    292⭐     34🍴 tty-solitaire) - Play solitaire in your terminal!

Shell Package Management

Tools for managing multiple shell configurations. For zsh-specific tools, see the Zsh section.

  •  14460⭐   2299🍴 bash-it) - A community Bash framework
  •   1191⭐     76🍴 basher) - A package manager for shell scripts
  •     79⭐      9🍴 bashing) - Smashing Bash into Pieces
  • 🌎 bpkg - JavaScript has npm, Ruby has Gems, Python has pip and now Shell has bpkg
  •   1830⭐    103🍴 dotdrop) - Save your dotfiles once, deploy them everywhere
  •    245⭐     31🍴 dotfiler) – Shell agnostic git based dotfiles package manager, written in Python.
  •   1188⭐     86🍴 fresh) - Keep your dotfiles fresh
  •   2136⭐    146🍴 homeshick) - Git dotfile synchronizer written in Bash
  •   1266⭐    253🍴 shallow-backup) - Easily create lightweight documentation of installed packages, dotfiles, and more
  •     83⭐      4🍴 shundle) - Plugin manager for shell scripts
  •   2204⭐    125🍴 vcsh) - Config manager based on Git
  • 🌎 yadm - Git-based dotfiles manager supporting encryption, alternates, and bootstrapping

Shell Script Development

Tools for writing, improving, or organizing Bash or other shell scripts

  •    689⭐     52🍴 ansi) - ANSI escape codes in pure bash - change text color, position the cursor, much more
  •    488⭐     57🍴 assert.sh) - Bash unit testing framework
  •    273⭐     22🍴 bashew) - bash script creator - from small stand-alone script to complex projects with CI/CD and testing
  •    606⭐     64🍴 bashful) - A collection of libraries to simplify writing Bash scripts
  •     75⭐      3🍴 Bashlets) - A modular extensible toolbox for Bash
  • 🌎 bashly - Bash command line framework and CLI generator
  •    100⭐     11🍴 bashmanager) - mini bash framework for creating command line tools
  •     34⭐      4🍴 bashwithnails) - a Bash framework written just for fun with testing, dependency management & packaging
  •   2300⭐    131🍴 bash-language-server) - 🌎 LSP-based Bash language server
  •    136⭐     16🍴 bash-modules) - functions for developing with unofficial strict mode enabled.
  •   5204⭐    427🍴 bats) - Bash Automated Testing System
  •    333⭐     29🍴 composure) - Compose, document, version and organize your shell functions
  •     66⭐      4🍴 crash) - Proper error handling, exceptions and try/catch for ZSH
  •    456⭐     11🍴 critic.sh) - Dead simple testing framework for Bash with coverage reporting
  •     89⭐      4🍴 dispatch) - A command line argument parser in 50 lines of portable shell script.
  •    222⭐     16🍴 esh) - A simple templating engine based on shell, implemented in ~290 lines of POSIX shell and awk.
  •    351⭐     20🍴 Fishtape) - TAP producer and test harness for fish
  •    439⭐     23🍴 getoptions) - An elegant option parser for shell scripts (sh, bash and all POSIX shells)
  •    226⭐      6🍴 getopts.fish) - CLI parser for fish
  •    166⭐     11🍴 is.sh) - An alternative for builtin test command, it will make your "if" statements pretty
  •     43⭐      3🍴 lumberjack) - A logging interface for shell scripts
  •    582⭐     69🍴 mo) - Mustache templates in pure bash
  •    160⭐     32🍴 optparse) - A BASH wrapper for getopts, for simple command line arguments.
  •    457⭐     60🍴 rerun) - A modular shell automation framework to organize your keeper scripts
  •    150⭐     22🍴 revolver) - A reusable progress spinner for shell scripts
  •     15⭐      1🍴 phases) - Minimally invasive bash preprocessor, select sections of your script to run
  •    162⭐     13🍴 powscript) - bash transpiler written in bash (coffeescript for bash)
  •    253⭐     57🍴 semver_bash) - Semantic Versioning in Bash
  •     29⭐      7🍴 sh-semver) - Semver tool for bash - finds versions matching to specified rules
  •  37141⭐   1800🍴 shellcheck) - Static analysis tool for shell scripts
  •   1206⭐     50🍴 shellfire) - A repository of namespaced, composable shell (bash, sh and dash) function libraries
  •   1221⭐     73🍴 shellspec) - A full-featured BDD unit testing framework for dash, bash, ksh, zsh and all POSIX shells
  •   7605⭐    357🍴 shfmt) - A shell parser, formatter, and interpreter with bash support; includes shfmt
  •    381⭐     25🍴 shpec) - A shell testing framework
  • 🌎 shutit - Automation framework based on bash and pexpect
  •   1751⭐    148🍴 sub) - A delicious way to organize programs
  •     60⭐      9🍴 ts) - A shell test script
  •      ?⭐      ?🍴 urchin) - An idiomatic shell testing framework that uses only shell commands
  •   1648⭐    209🍴 shunit2) - A unit test framework for Bash scripts with a flavour of JUnit/PyUnit.
  •     75⭐     10🍴 rebash) - Scripting library/framework. Features: imports, exceptions, doc-tests ...
  •    212⭐     24🍴 zunit) - A powerful unit testing framework for ZSH

Guides

Other Awesome Lists

Other amazingly awesome lists can be found in   2916⭐    280🍴 awesome-awesome) and  32458⭐   3570🍴 awesome-awesomeness).

See also

Source

 33988⭐   2400🍴 alebcay/awesome-shell)

About

A curated list of awesome command-line frameworks, toolkits, guides and gizmos. Inspired by awesome-php. With repository stars⭐ and forks🍴

Topics

Resources

License

Code of conduct

Stars

Watchers

Forks

Sponsor this project