awesome-shell/README.md

426 lines
37 KiB
Markdown
Raw Normal View History

2017-02-11 15:14:38 -05:00
```
█████╗ ██╗ ██╗███████╗███████╗ ██████╗ ███╗ ███╗███████╗
██╔══██╗██║ ██║██╔════╝██╔════╝██╔═══██╗████╗ ████║██╔════╝
███████║██║ █╗ ██║█████╗ ███████╗██║ ██║██╔████╔██║█████╗
██╔══██║██║███╗██║██╔══╝ ╚════██║██║ ██║██║╚██╔╝██║██╔══╝
2017-02-11 15:14:38 -05:00
██║ ██║╚███╔███╔╝███████╗███████║╚██████╔╝██║ ╚═╝ ██║███████╗
╚═╝ ╚═╝ ╚══╝╚══╝ ╚══════╝╚══════╝ ╚═════╝ ╚═╝ ╚═╝╚══════╝
███████╗██╗ ██╗███████╗██╗ ██╗
██╔════╝██║ ██║██╔════╝██║ ██║
███████╗███████║█████╗ ██║ ██║
╚════██║██╔══██║██╔══╝ ██║ ██║
███████║██║ ██║███████╗███████╗███████╗
╚══════╝╚═╝ ╚═╝╚══════╝╚══════╝╚══════╝
2017-02-11 15:14:38 -05:00
```
# Awesome Shell [![Awesome][awesome-badge]][awesome-link]
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](https://unix-shell.zeef.com/caleb.xu).
2016-12-01 17:33:31 -05:00
- [Shells](#shells)
2016-07-27 22:23:35 -04:00
- [Command-Line Productivity](#command-line-productivity)
- [Directory Navigation](#directory-navigation)
2016-07-27 22:23:35 -04:00
- [Customization](#customization)
- [For Developers](#for-developers)
- [System Utilities](#system-utilities)
- [Downloading and Serving](#downloading-and-serving)
- [Multimedia and File Formats](#multimedia-and-file-formats)
- [Applications](#applications)
- [Games](#games)
- [Shell Package Management](#shell-package-management)
- [Shell Script Development](#shell-script-development)
2014-07-06 22:06:05 -04:00
- [Guides](#guides)
- [**Awesome Zsh**][awesome-zsh]  [![Awesome][awesome-badge]][awesome-zsh]
- [**Awesome Fish**][awesome-fish] [![Awesome][awesome-badge]][awesome-fish]
- [Other Awesome Lists](#other-awesome-lists)
2014-07-06 22:11:14 -04:00
2016-12-01 17:33:31 -05:00
## Shells
*Choose your base shell.*
* [bash](https://www.gnu.org/software/bash/) - GNU Project's shell (Bourne Again SHell)
2018-09-04 21:33:55 -04:00
* [elvish](https://elv.sh/) - Friendly, expressive shell features like anonymous functions and data structures
2016-12-01 17:33:31 -05:00
* [fish](https://fishshell.com) - Smart and user-friendly command line shell
* [ion](https://github.com/redox-os/ion) - A modern system shell that features a simple, yet powerful, syntax. It is written entirely in Rust.
2019-06-01 11:00:44 -04:00
* [ksh93](https://github.com/att/ast) - Korn Shell
* [mksh](https://github.com/MirBSD/mksh) - MirBSD Korn Shell
2020-04-07 15:49:25 -04:00
* [nushell](https://github.com/nushell/nushell) - A modern shell written in Rust
2019-06-01 11:00:44 -04:00
* [oksh](https://github.com/ibara/oksh) - Portable OpenBSD ksh
* [osh](https://www.oilshell.org) - Bash compatible, with new/modern Unix shell language called Oil
2019-06-01 11:00:44 -04:00
* [pdksh](https://cvsweb.openbsd.org/cgi-bin/cvsweb/src/bin/ksh/) - Public domain Korn shell
2019-04-10 15:08:38 -04:00
* [shell++](https://github.com/alexst07/shell-plus-plus) - Friendly and modern functional and object oriented shell script language
2018-09-04 21:41:54 -04:00
* [shenv](https://github.com/shenv/shenv) - Simple shell version management
2019-06-01 11:00:44 -04:00
* [tcsh](https://www.tcsh.org/) - C shell with file name completion and command line editing
2020-01-17 07:54:49 -05:00
* [xiki](https://xiki.org) - Makes the shell console more friendly and powerful
2019-10-23 14:14:42 -04:00
* [xonsh](https://xon.sh) - Python-ish, BASHwards-looking shell language and command prompt
2019-11-20 17:59:29 -05:00
* [yash](https://yash.osdn.jp/) - A POSIX-compliant command line shell with built-in support for completion and prediction based on command history
* [zsh](https://www.zsh.org) - Powerful shell with scripting language
2016-12-01 17:33:31 -05:00
## Command-Line Productivity
2014-07-06 22:11:14 -04:00
*Search, bookmarks, multiplexing, and other tools that make your terminal experience more productive.*
* [AdvancedNewFile](https://github.com/tanrax/terminal-AdvancedNewFile) - Fast creation of files and directories in a recursive way. Inspired by the Vim plugin.
* [ag](https://github.com/ggreer/the_silver_searcher) - Super fast string search through a directory hierarchy
* [aliases](https://github.com/sebglazebrook/aliases) - Contextual, dynamic, organized aliases for bash
2019-10-23 14:14:42 -04:00
* [autoenv](https://github.com/inishchith/autoenv) - Directory-based environments
* [bashhub](https://github.com/rcaloras/bashhub-client) - :cloud: Bash history in the cloud. Indexed and searchable.
* [boilr](https://github.com/tmrts/boilr) - A blazingly fast CLI tool for creating projects from boilerplate templates.
2020-02-03 17:22:17 -05:00
* [boom](https://github.com/holman/boom) - Store links and snippets in the command line
2016-10-27 16:19:06 -04:00
* [borg](https://github.com/ok-borg/borg) - A terminal based search engine for bash commands
* [browsh](https://github.com/browsh-org/browsh) - The modern text-based browser
2017-04-17 08:40:29 -04:00
* [Buku](https://github.com/jarun/Buku) - Powerful command-line bookmark manager
2020-04-07 15:49:25 -04:00
* [byobu](https://www.byobu.org) - Text-based window manager and terminal multiplexer
* [cod](https://github.com/dim-an/cod) — A completion daemon for shell that learns when you invoke `--help` commands
2018-01-25 02:11:01 -05:00
* [CloudClip](https://github.com/skywind3000/CloudClip) - Your own clipboard in the cloud, copy and paste text with gist between different systems
* [ddgr](https://github.com/jarun/ddgr) - DuckDuckGo from the terminal
2015-12-14 22:09:57 -05:00
* [desk](https://github.com/jamesob/desk) - A lightweight workspace manager for the shell
2016-01-15 23:22:29 -05:00
* [direnv](https://github.com/direnv/direnv) - An environment switcher for the shell, compare with autoenv
2020-02-03 17:18:10 -05:00
* [dnote](https://github.com/dnote/dnote) - A simple command line notebook with multi-device sync and web interface
2020-01-17 08:59:29 -05:00
* [eureka](https://github.com/simeg/eureka/) - :bulb: CLI tool to input and store your ideas without leaving the terminal
* [fasd](https://github.com/clvv/fasd) - Command-line productivity booster, offers quick access to files and directories
* [fd](https://github.com/sharkdp/fd) - A simple, fast and user-friendly alternative to find.
2020-02-03 17:22:17 -05:00
* [foxy](https://github.com/s-p-k/foxy) - Plain text bookmarks for Firefox and surf browsers.
* [fselect](https://github.com/jhspetersson/fselect) - Find files with SQL-like queries.
2019-11-26 11:35:01 -05:00
* [funky](https://github.com/bbugyi200/funky) - Extends functionality of shell functions making them more powerful and flexible.
* [fz](https://github.com/changyuheng/fz) - Seamless fuzzy tab completion for z
2015-06-16 11:14:13 -04:00
* [fzf](https://github.com/junegunn/fzf) - A command-line fuzzy finder
2020-01-05 14:50:40 -05:00
* [gitmux](https://github.com/arl/gitmux) - Show Git status in Tmux status bar
2017-04-17 08:40:29 -04:00
* [googler](https://github.com/jarun/googler) - Google Search, Google Site Search, Google News from the terminal
2019-10-23 14:09:56 -04:00
* [googlr](https://github.com/Astranno/googlr) - Command line tool that lets you search Google from your terminal.
2017-08-31 09:54:06 -04:00
* [has](https://github.com/kdabir/has) - `has` helps you check presence of various command line tools and their versions on path
* [how2](https://github.com/santinic/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.
2019-11-04 08:22:41 -05:00
* [navi](https://github.com/denisidoro/navi) - An interactive cheatsheet tool for the command-line
* [hhighlighter](https://github.com/paoloantinori/hhighlighter) - Colorize words in a command output
* [hr](https://github.com/LuRsT/hr) - `<hr />` for your terminal
2017-11-17 10:49:01 -05:00
* [hss](https://github.com/six-ddc/hss) - An interactive parallel ssh client featuring autocomplete and asynchronous execution
* [hstr](https://github.com/dvorka/hstr) - Bash History Suggest Box
2016-02-19 11:31:12 -05:00
* [k](https://github.com/supercrabtree/k) - k is a Zsh script to make directory listings more readable, adding Git status, fileweight colors and rotting dates
2016-02-06 01:38:34 -05:00
* [k alias](https://github.com/lingtalfi/k) - get kool aliases (and more) working with a simple one-liner
* [lf.sh](https://github.com/suewonjp/lf.sh) - Quickly search files with fewer typings and do many more (grepping, copying path to clipboard, etc)
2018-09-04 21:33:55 -04:00
* [Lmod](https://lmod.readthedocs.io/en/latest/) - Lua-based Environment Modules that enhances Tcl-based modules while being backward compatible (compare to modules)
2018-10-27 01:17:33 -04:00
* [loop](https://github.com/Miserlou/Loop) - Write and control complex loops with as one-liners
2015-06-16 15:56:01 -04:00
* [marker](https://github.com/pindexis/marker) - Bookmark your shell commands
2018-11-28 10:37:51 -05:00
* [mackup](https://github.com/lra/mackup/) - Keep your application settings in sync (OS X/Linux)
2019-10-23 16:07:34 -04:00
* [mcfly](https://github.com/cantino/mcfly) - Fly through your shell history. Great Scot!
* [modules](http://modules.sourceforge.net/) - Classical Tcl-based Environment Modules managing the shell environment (compare to Lmod, direnv, and autoenv)
2017-04-17 08:40:29 -04:00
* [nnn](https://github.com/jarun/nnn) - File browser and disk usage analyzer with excellent desktop integration
* [parallel](https://www.gnu.org/software/parallel/) - Build and execute shell command lines from standard input in parallel
2015-11-25 07:40:30 -05:00
* [pathpicker](https://github.com/facebook/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.
* [pdd](https://github.com/jarun/pdd) - Tiny date, time diff calculator with timers
* [percol](https://github.com/mooz/percol) - Adds flavor of interactive filtering to the traditional pipe concept of UNIX shell
2018-03-22 15:02:29 -04:00
* [q](https://github.com/cal2195/q) - Vim like macro registers for your Bash and Zsh Shell
2015-11-25 07:38:52 -05:00
* [qfc](https://github.com/pindexis/qfc) - File-completion widget for Bash and Zsh
2020-02-08 15:07:19 -05:00
* [resh](https://github.com/curusarn/resh) - Contextual shell history for Zsh and Bash
2017-02-11 15:16:07 -05:00
* [rg](https://github.com/BurntSushi/ripgrep) - ripgrep is a line oriented search tool that combines the usability of The Silver Searcher with the raw speed of GNU grep
2019-05-19 14:46:39 -04:00
* [screen](https://www.gnu.org/software/screen/) - GNU terminal multiplexer
2018-09-04 21:41:54 -04:00
* [shell-history](https://github.com/pawamoy/shell-history) - Visualize your shell usage with Highcharts
* [SHML](https://github.com/odb/shml) - Style framework for the terminal (Shell Markup Language)
2016-01-25 10:31:33 -05:00
* [slugify](https://github.com/benlinton/slugify) - Command that converts filenames and directories to a web friendly format
2016-04-15 14:21:54 -04:00
* [sman](https://github.com/tokozedg/sman) - :bug: A command-line snippet manager
* [spark](https://github.com/holman/spark) - ▁▂▃▅▂▇ in your shell
2020-08-02 13:20:23 -04:00
* [spark.fish](https://github.com/jorgebucaran/spark.fish) - ▁▂▃▅ Sparkline Generator
2016-02-28 09:58:02 -05:00
* [sheet](https://github.com/oscardelben/sheet) - Text snippets for the command line
2015-12-12 12:52:04 -05:00
* [spot](https://github.com/rauchg/spot) - Tiny file search utility
2020-02-03 17:22:17 -05:00
- [snips](https://github.com/srijanshetty/snips) - Command line tool to manage snippets of code.
* [sqlline](https://github.com/julianhyde/sqlline) - Shell for issuing SQL to relational databases via JDBC (multiline, completion, highlighting, dialect support)
* [sshfs](https://github.com/osxfuse/sshfs) - A tool for mounting remote file systems over SSH
* [sudocabulary](https://github.com/badarsh2/Sudocabulary) - Learn English Vocabulary from your terminal
* [surfraw](https://gitlab.com/surfraw/Surfraw) - browse specific site and search the web from your terminal without browser.
2018-07-04 11:44:07 -04:00
* [task-manager](https://github.com/lingtalfi/task-manager) - Execute all your scripts with just two or three keystrokes.
2019-10-23 15:37:39 -04:00
* [td-cli](https://github.com/darrikonn/td-cli) - A todo command line manager to organize and manage your todos across multiple projects.
* [thefuck](https://github.com/nvbn/thefuck) - Fix common shell mistakes by using an easy to remember command
2020-06-14 00:44:40 -04:00
* [tldr](https://github.com/raylee/tldr-sh-client) - A fully-functional bash client for tldr, simplified and community-driven man pages
* [tmux](https://tmux.github.io/) - Amazing terminal multiplexer
* [undollar](https://github.com/ImFeelingDucky/undollar) - undollar bites the dollar sign off the tip of the command you just pasted into your terminal
* [v](https://github.com/rupa/v) - z for vim.
* [wemux](https://github.com/zolrath/wemux) - Multi-User Tmux Made Easy
2018-10-27 01:21:54 -04:00
* [xsv](https://github.com/BurntSushi/xsv) - a fast CSV command line toolkit written in Rust
* [xxh](https://github.com/xxh/xxh) - Bring your favorite shell wherever you go through the SSH.
### Directory Navigation
* [aliasme](https://github.com/Jintin/aliasme) - alias helper to change directory quickly
* [autojump](https://github.com/wting/autojump) - A cd command that learns - easily navigate directories from the command line
* [bashmarks](https://github.com/huyng/bashmarks) - Directory bookmarks for the shell
* [bd](https://github.com/vigneshwaranr/bd) - Quickly go back to a parent directory
* [commacd](https://github.com/shyiko/commacd) - A faster way to move around in Bash
* [enhancd](https://github.com/b4b4r07/enhancd) - :rocket: A next-generation cd command with an interactive filter
* [goto](https://github.com/iridakos/goto) - A shell utility for navigation to aliased directories supporting auto-completion
* [jump](https://github.com/gsamokovarov/jump) - Jump helps you navigate your file system faster by learning your habits.
* [lazy-cd](https://github.com/pedramamini/lazy-cd) - Simple bash commands for bookmarked navigation of the file system, complete with bash-completion.
* [up](https://github.com/shannonmoeller/up) - Ascend directories by name or count; for bash, zsh, and fish.
2019-11-26 11:16:16 -05:00
* [z](https://github.com/rupa/z) - z is the new j, yo
2019-10-23 16:28:12 -04:00
* [z.lua](https://github.com/skywind3000/z.lua) - A new cd command that helps you navigate faster by learning your habits
2020-05-02 18:28:26 -04:00
* [zoxide](https://github.com/ajeetdsouza/zoxide) - A faster way to navigate your filesystem, written in Rust
2014-07-06 22:11:14 -04:00
## Customization
2014-07-09 19:35:37 -04:00
*Custom prompts, color themes, etc.*
2014-07-06 22:11:14 -04:00
2016-12-03 10:01:08 -05:00
* [base16-builder](https://github.com/base16-builder/base16-builder) - Base16-Builder
2016-02-24 18:53:32 -05:00
* [bash-full-of-colors](https://github.com/slomkowski/bash-full-of-colors) - Powerful prompt with screen, tmux, git support and many more
* [bash-git-prompt](https://github.com/magicmonty/bash-git-prompt) - An informative and fancy Bash prompt for Git users
2014-07-09 19:35:37 -04:00
* [bash-powerline](https://github.com/riobard/bash-powerline) - Powerline-style Bash prompt in pure Bash script
2014-07-07 19:14:24 -04:00
* [bashstrap](https://github.com/barryclark/bashstrap) - A quick way to spruce up OSX terminal
2017-02-13 08:29:55 -05:00
* [bullet-train-oh-my-zsh-theme](https://github.com/caiogondim/bullet-train.zsh) - :bullettrain_side: An oh-my-zsh shell theme based on the Powerline Vim plugin
* [emojify](https://github.com/mrowa44/emojify) Emoji on the command line :scream:
2014-10-06 11:10:55 -04:00
* [flatui-terminal-theme](https://dribbble.com/shots/1021755-Flat-UI-Terminal-Theme) - Nicer colors for terminal
2020-01-17 08:07:43 -05:00
* [geometry](https://github.com/geometry-zsh/geometry) - A minimal ZSH theme where any function can be added to the left prompt or (async) right prompt on the fly.
* [git-prompt](https://github.com/lvv/git-prompt) - Bash prompt with Git, SVN and HG modules
2015-05-03 03:50:33 -04:00
* [gittify](https://github.com/momeni/gittify) - A colorful Bash prompt + customized Git aliases
2015-12-12 12:52:04 -05:00
* [Gogh - Color Scheme](https://github.com/Mayccoll/Gogh) - Color Scheme for Gnome Terminal
2014-07-07 19:14:24 -04:00
* [liquidprompt](https://github.com/nojhan/liquidprompt) - A full-featured & carefully designed adaptive prompt for Bash & Zsh
2017-02-13 08:29:55 -05:00
* [mysql-colorize](https://github.com/zpm-zsh/mysql-colorize) - Colorization for mysql comand-line client
* [oh-my-git](https://github.com/arialdomartini/oh-my-git) - An opinionated git prompt for bash and zsh
* [polyglot](https://github.com/agkozak/polyglot) - An informative Git prompt that works in bash, zsh, ksh, mksh, pdksh, dash, and busybox sh
2020-10-07 22:00:45 -04:00
* [powerlevel10k](https://github.com/romkatv/powerlevel10k) - Super flexible awesome powerline ZSH theme
* [sexy-bash-prompt](https://github.com/twolfson/sexy-bash-prompt) - Bash prompt with colors, Git statuses, and Git branches
* [synth-shell](https://github.com/andresgongora/synth-shell) - Greeter with a customizable status report and a fancy bash prompt
2014-07-07 19:14:24 -04:00
## For Developers
2014-07-07 19:14:24 -04:00
*Command-line development, version control, and deployment.*
2014-07-07 19:14:24 -04:00
2019-10-23 15:45:02 -04:00
* [ack](https://beyondgrep.com/) - A grep-like search tool optimized for source code.
* [add-gitignore](https://github.com/TejasQ/add-gitignore) - Interactive CLI that generates a .gitignore for your project based on your needs.
* [bcal](https://github.com/jarun/bcal) - Byte CALculator for storage conversions and calculations
* [bitwise](https://github.com/mellowcandle/bitwise) - Terminal based interactive bit manipulator in curses.
2015-07-23 15:21:19 -04:00
* [bocker](https://github.com/p8952/bocker) - Docker implemented in 100 lines of bash
2015-09-28 13:48:10 -04:00
* [cloc](https://github.com/AlDanial/cloc) - Count Lines of Code
* [doclt](https://github.com/omgimanerd/doclt) - A command line interface to Digital Ocean
* [dokku](https://github.com/dokku/dokku) - Docker powered mini-Heroku. The smallest PaaS implementation you've ever seen.
2020-08-02 13:20:23 -04:00
* [getopts.fish](https://github.com/jorgebucaran/getopts.fish) - CLI parser for fish
2019-10-23 16:18:28 -04:00
* [forgit](https://github.com/wfxr/forgit) - Utility tool for `git` taking advantage of fuzzy finder fzf.
* [git-extra-commands](https://github.com/unixorn/git-extra-commands) - Many Git extra utilities. Churn, cut-branch, improved-merge and many more.
2015-12-12 12:52:04 -05:00
* [git-extras](https://github.com/tj/git-extras) - Git utilities -- repo summary, repl, changelog population, author commit percentages and more
* [git-open](https://github.com/paulirish/git-open) - Type `git open` to open the GitHub page or website for a repository in your browser
* [git-quick-stats](https://github.com/arzzen/git-quick-stats) - Git quick statistics is a simple and efficient way to access various statistics in git repository.
* [git-semver](https://github.com/markchalloner/git-semver) - Git plugin for easing semantic versioning and changelog validation
* [git-sh](https://github.com/rtomayko/git-sh) - A customized Bash environment suitable for Git work
2016-01-05 11:51:07 -05:00
* [hub](https://github.com/github/hub) - hub helps you win at git.
* [licins](https://github.com/dogoncouch/licins) - Insert commented software licenses into source code.
* [mkdkr](https://github.com/rosineygp/mkdkr) - Makefile + Docker = CI Pipeline
* [mr](https://myrepos.branchable.com) - Multiple Repository management tool
2019-10-23 14:09:56 -04:00
* [overcommit](https://github.com/sds/overcommit) - A fully configurable and extendable Git hook manager
2018-01-31 22:34:01 -05:00
* [pre-commit](https://pre-commit.com) - A framework for managing and maintaining multi-language pre-commit hooks
* [rebound](https://github.com/shobrook/rebound) - Instantly browse Stack Overflow results in your terminal when you get a compiler error
* [repren](https://github.com/jlevy/repren) - Command-line search-and-replace and file-renaming swiss army knife
* [slap](https://github.com/slap-editor/slap) - Sublime-like terminal-based text editor that runs on Node.js
* [shipit](https://github.com/sapegin/shipit) - Minimalistic SSH deployment
2017-04-13 04:46:50 -04:00
* [starring](https://github.com/ritz078/starring) - Automatically star the npm-packages that you are using on GitHub.
* [tag](https://github.com/aykamko/tag) - Instantly jump to your ag matches.
2019-10-23 16:02:08 -04:00
* [wipe-modules](https://github.com/bntzio/wipe-modules) - A little agent that removes the node_modules folder of non-active projects
2014-07-07 19:14:24 -04:00
## System Utilities
2014-07-07 19:14:24 -04:00
*OS-related tools, including system administration, system debugging, and file and process management.*
2014-07-07 19:14:24 -04:00
2017-04-20 18:38:24 -04:00
* [atop](https://www.atoptool.nl) - ASCII full-screen performance monitor that is capable of reporting the activity of all processes
2019-10-23 15:53:16 -04:00
* [bat](https://github.com/sharkdp/bat) - A `cat` clone with wings
* [bmon](https://github.com/tgraf/bmon) - Real-time network bandwidth monitor and rate estimator with human-friendly visual output
2017-12-15 17:47:18 -05:00
* [catcli](https://github.com/deadc0de6/catcli) - The command line catalog tool for your offline data
2020-10-07 21:52:11 -04:00
* [ccat](https://github.com/owenthereal/ccat) - ccat is the colorizing cat. It works similar to cat but displays content with syntax highlighting.
2019-10-23 15:50:00 -04:00
* [exa](https://github.com/ogham/exa) - A modern version of `ls`.
* [progress](https://github.com/Xfennec/progress) - Linux tool to show progress for `cp`, `rm`, `dd`, and more...
2018-04-02 01:34:38 -04:00
* [stronghold](https://github.com/alichtman/stronghold) - Easily configure MacOS security settings from the terminal.
* [glances](https://github.com/nicolargo/glances) - Glances an Eye on your system
2016-01-05 11:39:47 -05:00
* [goaccess](https://github.com/allinurl/goaccess) - GoAccess is a real-time web log analyzer and interactive viewer that runs in a terminal in \*nix systems.
* [hblock](https://github.com/hectorm/hblock) - Hosts-file based adblocker
2016-09-11 22:07:29 -04:00
* [histstat](https://github.com/vesche/histstat) - History for netstat
* [htop](https://github.com/hishamhm/htop) - A ncurses based interactive process viewer which aims to be a better `top`
* [lnav](https://lnav.org) - An advanced log file viewer for the small-scale
* [logdissect](https://github.com/dogoncouch/logdissect) - CLI utility and Python API for analyzing log files and other data.
2017-01-04 08:20:58 -05:00
* [ls++](https://github.com/trapd00r/ls--) - Colorized ls on steroids
* [lsp](https://github.com/dborzov/lsp) - An improved `ls`, with file descriptions in plain language and intelligent file grouping
2020-04-04 11:23:19 -04:00
* [maza](https://github.com/tanrax/maza-ad-blocking) - Local ad blocker. Like Pi-hole but local and using your operating system.
2015-12-31 10:40:45 -05:00
* [mtr](https://github.com/traviscross/mtr) - The functionality of the 'traceroute' and 'ping' programs in a single network diagnostic tool.
2015-12-12 12:52:04 -05:00
* [ncdu](https://dev.yorhel.nl/ncdu) - NCurses Disk Usage
2018-12-06 02:02:05 -05:00
* [nmtui](https://github.com/NetworkManager/NetworkManager) - Text User Interface for controlling NetworkManager
* [powertop](https://github.com/fenrus75/powertop) - Battery/Power usage and device stats monitoring command-line tool, with tune-up options.
* [procdog](https://github.com/jlevy/procdog) - Lightweight command-line control of long-lived processes like servers
* [quick-secure](https://github.com/marshyski/quick-secure) - Quickly secure and harden UNIX/Linux systems
* [rng](https://github.com/nickolasburr/rng) - Copy range of lines from file or stdin to stdout.
* [wifi-wand](https://github.com/keithrbennett/wifiwand) - a Ruby command line application for managing WiFi on MacOS (install by `gem install wifi-wand`)
* [xiringuito](https://github.com/ivanilves/xiringuito) - SSH-based "VPN for poors"
## Downloading and Serving
*Self-hosted, lightweight servers and networking tools written in shell scripts.*
2016-05-12 20:13:55 -04:00
* [aria2](https://github.com/aria2/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
* [balls](https://github.com/jneen/balls) - Bash on Balls
* [bashttpd](https://github.com/avleen/bashttpd) - A web server written in Bash
2020-02-12 03:42:21 -05:00
* [bashhub-server](https://github.com/nicksherron/bashhub-server) - Private cloud shell history. Open source server for bashhub
* [bitpocket](https://github.com/sickill/bitpocket) - "DIY Dropbox" or "2-way directory (r)sync with proper deletion"
* [Dropbox-Uploader](https://github.com/andreafabrizi/Dropbox-Uploader) - Dropbox Uploader is a Bash script which can be used to upload, download, list or delete files from Dropbox
2020-10-07 21:52:11 -04:00
* [httpie](https://github.com/httpie/httpie) - HTTPie is a command line HTTP client, a user-friendly cURL replacement
* [HTTPLab](https://github.com/gchaincl/httplab) - The interactive web server, let you inspect HTTP requests and forge responses.
* [ngincat](https://github.com/jaburns/ngincat) - Tiny Bash HTTP server using netcat
* [resty](https://github.com/micha/resty) - Little command line REST client that you can use in pipelines
* [shell2http](https://github.com/msoap/shell2http) - HTTP-server to execute shell commands. Designed for development, prototyping or remote control
* [vesper](https://github.com/chris-rock/vesper) - 🍸Vesper is a HTTP framework for Bash/Unix Shell
2019-10-23 14:09:56 -04:00
* [youtube-dl](https://github.com/ytdl-org/youtube-dl) - Small command-line program to download videos from YouTube.com and other video sites
2015-04-19 11:32:05 -04:00
## Multimedia and File Formats
2014-07-12 06:47:09 -04:00
*Tools for handling video and audio files.*
2018-04-07 19:59:07 -04:00
* [adb-export](https://github.com/sromku/adb-export) - Export Android content providers to CSV format
* [Android-Kitchen](https://github.com/dsixda/Android-Kitchen) - A text-based kitchen for Android ROM customization. Uses shell scripts and works with Cygwin/OS X/Linux
* [Beets](https://github.com/beetbox/beets) - Music library manager and MusicBrainz tagger
2015-09-01 04:34:36 -04:00
* [cmus](https://github.com/cmus/cmus) - Cross-platform cli audio player.
2019-11-26 11:23:47 -05:00
* [fx](https://github.com/antonmedv/fx) - Command-line JSON processing tool by anononymus JavaScript functions
2016-07-10 20:18:51 -04:00
* [gifgen](https://github.com/lukechilds/gifgen) - Simple high quality GIF encoding
* [image-scraper](https://github.com/sananth12/ImageScraper) - A cool command line image scraper with a lot of features.
2017-04-17 08:40:29 -04:00
* [imgp](https://github.com/jarun/imgp) - Blazing fast batch image resizer and rotator
* [jo](https://github.com/jpmens/jo) - A small utility to create JSON objects from command-line arguments.
* [jq](https://github.com/stedolan/jq) - Sed for json data. You can use it to slice and filter and map and transform structured data
* [korkut](https://github.com/oguzhaninan/korkut) - Quick and simple image processing at the command line.
* [mpv](https://mpv.io/) - Lets you play most audio and video formats (using ASCII characters) in the shell as well as in a GUI.
2016-08-13 12:17:41 -04:00
* [nehm](https://github.com/bogem/nehm) - Console tool, which downloads, sets IDv3 tags and adds to your iTunes (if you use it) your SoundCloud likes in convenient way
2014-07-12 06:47:09 -04:00
* [PiCAST](https://github.com/lanceseidman/PiCAST) - PiCAST turns your $35 Raspberry Pi in to a Chromecast like Device
* [sejda](https://github.com/torakiki/sejda/) - Command line manipulation of PDF documents (split, merge, rotate, convert to jpg, extract text, etc)
* [visidata](https://github.com/saulpw/visidata) - A terminal spreadsheet multitool for exploring and arranging data (csv/json/xml/xls/yaml/etc)
2017-01-04 08:16:28 -05:00
* [xidel](https://github.com/benibela/xidel/) - Cli tool to filter, map and create HTML/XML/JSON data with (Turing-complete) XPath and XQuery.
* [xmlstarlet](http://xmlstar.sourceforge.net/) - Old but powerful tool for command-line XML formatting, filtering, and manipulation.
## Applications
*Command line-based applications or command line access to existing services.*
* [ansiweather](https://github.com/fcambus/ansiweather) - Weather in your terminal, with ANSI colors and Unicode symbols
* [awless](https://github.com/wallix/awless) - A powerful, innovative and small surface CLI to manage AWS.
* [bashblog](https://github.com/cfenollosa/bashblog) - A Bash script that handles blog posting
2018-10-27 01:23:07 -04:00
* [carbon-now-cli](https://github.com/mixn/carbon-now-cli) - 🎨 Beautiful images of your code — from right inside your terminal.
* [choosealicense-cli](https://github.com/lord63/choosealicense-cli) - Choose an OSS license from the comfort of your terminal
2018-06-04 09:58:20 -04:00
* [cointop](https://github.com/miguelmota/cointop) - The fastest and most interactive terminal based UI application for tracking cryptocurrencies
* [facebook-cli](https://github.com/specious/facebook-cli) - Facebook command line tool
2016-01-27 16:28:03 -05:00
* [fanyi](https://github.com/afc163/fanyi) - Translate English to Chinese in terminal
2018-04-27 11:54:40 -04:00
* [gcalcli](https://github.com/insanum/gcalcli) - Google Calendar command line interface
* [geeknote](https://github.com/VitaliyRodnenko/geeknote) - Command line evernote client
2016-05-17 07:43:06 -04:00
* [haxor-news](https://github.com/donnemartin/haxor-news) - Browse Hacker News like a haxor
* [hn-cli](https://github.com/rafaelrinaldi/hn-cli) - Browse Hacker News from the comfort of your Terminal
2015-10-19 04:43:54 -04:00
* [iponmap](https://github.com/nogizhopaboroda/iponmap) - Draw point on world map using ip address
* [isitup](https://github.com/lord63/isitup) - Check whether a website is up or down
2019-10-23 14:14:42 -04:00
* [jrnl](https://github.com/jrnl-org/jrnl) - A simple command line journal application that stores your journal in a plain text file
2020-10-08 11:01:34 -04:00
* [kanban.bash](https://github.com/coderofsalvation/kanban.bash) - commandline asciii kanban board for minimalist productivity bash hackers (csv-based)
* [ledger](https://github.com/ledger/ledger) - Command line accounting
* [licen](https://github.com/lord63/licen) - Generate your license. Yet another lice, but implement with Jinja2 and docopt
2018-09-04 21:58:22 -04:00
* [md2png](https://github.com/weaming/md2png) - Convert markdown to PNG image
2016-02-04 10:50:55 -05:00
* [moviemon](https://github.com/iCHAIT/moviemon) - Everything about your movies within the command line.
2020-04-17 22:24:27 -04:00
* [nomino](https://github.com/yaa110/nomino) - Batch rename utility using regex, sort and map file options.
2020-05-14 13:37:03 -04:00
* [pockyt](https://github.com/achembarpu/pockyt) - Read, Manage, and Automate your [Pocket](https://getpocket.com) collection.
* [pushblast](https://github.com/alebcay/pushblast) - Get PushBullet notifications when a shell program exits
* [pushbullet-bash](https://github.com/Red5d/pushbullet-bash) - Bash interface to the PushBullet API
* [ranger](https://github.com/ranger/ranger) - A console file manager with VI key bindings.
2016-05-17 07:42:55 -04:00
* [Reddit Terminal Viewer](https://github.com/michael-lazar/rtv) - Browse Reddit from your terminal
2015-10-18 17:12:58 -04:00
* [SAWS](https://github.com/donnemartin/saws) - A Supercharged AWS CLI
2018-11-28 10:27:49 -05:00
* [taskbook](https://github.com/klaussinani/taskbook) - Tasks, boards & notes for the command-line habitat
* [taskwarrior](https://taskwarrior.org/) - A command-line TODO list manager
2017-01-05 21:25:53 -05:00
* [terjira](https://github.com/keepcosmos/terjira) - Command line power tool for Jira
* [transfer.sh](https://transfer.sh/) — Quickly upload and share files from your shell
2016-07-13 15:48:17 -04:00
* [vl](https://github.com/ellisonleao/vl) - URL link checker on text documents
* [wego](https://github.com/schachmat/wego) - Weather app for the terminal
* [whales](https://github.com/Gueils/whales) - A tool to automatically dockerize your applications
* [whereami](https://github.com/rafaelrinaldi/whereami) - Get your geolocation information from the CLI
* [wttr.in](https://github.com/chubin/wttr.in) - :partly_sunny: The right way to check the weather (curl wttr.in)
2014-07-12 06:47:09 -04:00
2014-07-09 19:35:37 -04:00
## Games
*All work and no play is a cruddy way to spend your day.*
* [bash2048](https://github.com/mydzor/bash2048) - Bash implementation of 2048 game
2015-06-17 09:44:32 -04:00
* [minesweeper](https://github.com/feherke/Bash-script/tree/master/minesweeper) - Bash implementation of minesweeper
2017-02-20 15:58:04 -05:00
* [nudoku](https://github.com/jubalh/nudoku) - ncurses based sudoku game written in C
2018-04-07 19:49:28 -04:00
* [piu-piu](https://github.com/vaniacer/piu-piu-SH) - Horizontal scroller game in bash with multiplayer mode!
* [sedtris](https://github.com/uuner/sedtris) - Tetris in sed
2014-09-23 16:12:11 -04:00
* [sed-scripts](https://github.com/aureliojargas/sed-scripts) - Arkanoid and Sokoban written using sed
* [SHTAP](https://notimetoplay.org/engines/shtap/) - Reusable text adventure engine for Bash 4
2017-02-20 15:57:51 -05:00
* [tty-solitaire](https://github.com/mpereira/tty-solitaire) - Play solitaire in your terminal!
2014-08-25 20:43:02 -04:00
## Shell Package Management
*Tools for managing multiple shell configurations. For zsh-specific tools, see the Zsh section.*
2015-12-12 12:52:04 -05:00
* [bash-it](https://github.com/Bash-it/bash-it) - A community Bash framework
* [basher](https://github.com/basherpm/basher) - A package manager for shell scripts
* [bashing](https://github.com/xsc/bashing) - Smashing Bash into Pieces
* [bpkg](https://www.bpkg.sh/) - JavaScript has npm, Ruby has Gems, Python has pip and now Shell has bpkg
2017-04-26 07:29:53 -04:00
* [dotdrop](https://github.com/deadc0de6/dotdrop) - Save your dotfiles once, deploy them everywhere
* [dotfiler](https://github.com/svetlyak40wt/dotfiler) Shell agnostic git based dotfiles package manager, written in Python.
* [fresh](https://github.com/freshshell/fresh) - Keep your dotfiles fresh
* [homeshick](https://github.com/andsens/homeshick) - Git dotfile synchronizer written in Bash
2018-06-04 09:57:46 -04:00
* [shallow-backup](https://github.com/alichtman/shallow-backup) - Easily create lightweight documentation of installed packages, dotfiles, and more
2017-05-26 14:23:40 -04:00
* [shundle](https://github.com/javier-lopez/shundle) - Plugin manager for shell scripts
2017-04-20 18:33:47 -04:00
* [vcsh](https://github.com/RichiH/vcsh) - Config manager based on Git
2019-10-23 14:09:56 -04:00
* [yadm](https://yadm.io/) - Git-based dotfiles manager supporting encryption, alternates, and bootstrapping
## Shell Script Development
*Tools for writing, improving, or organizing Bash or other shell scripts*
2015-08-22 15:20:06 -04:00
* [ansi](https://github.com/fidian/ansi) - ANSI escape codes in pure bash - change text color, position the cursor, much more
2015-08-08 18:21:30 -04:00
* [assert.sh](https://github.com/lehmannro/assert.sh) - Bash unit testing framework
2019-10-23 14:14:42 -04:00
* [bashful](https://github.com/jmcantrell/bashful) - A collection of libraries to simplify writing Bash scripts
2019-10-23 16:23:11 -04:00
* [Bashlets](https://github.com/reale/bashlets) - A modular extensible toolbox for Bash
2015-09-20 23:39:59 -04:00
* [bashmanager](https://github.com/lingtalfi/bashmanager) - mini bash framework for creating command line tools
* [bashwithnails](https://github.com/mindaugasbarysas/bashwithnails) - a Bash framework written just for fun with testing, dependency management & packaging
2020-04-07 15:49:25 -04:00
* [bash-language-server](https://github.com/bash-lsp/bash-language-server) - [LSP](https://microsoft.github.io/language-server-protocol/)-based Bash language server
* [bats](https://github.com/bats-core/bats-core) - Bash Automated Testing System
2017-02-12 22:58:23 -05:00
* [crash](https://github.com/molovo/crash) - Proper error handling, exceptions and try/catch for ZSH
2020-02-25 04:05:56 -05:00
* [critic.sh](https://github.com/Checksum/critic.sh) - Dead simple testing framework for Bash with coverage reporting
2019-11-20 18:05:36 -05:00
* [esh](https://github.com/jirutka/esh) - A simple templating engine based on shell, implemented in ~290 lines of POSIX shell and awk.
2019-10-23 14:09:56 -04:00
* [Fishtape](https://github.com/jorgebucaran/fishtape) - TAP producer and test harness for fish
* [composure](https://github.com/erichs/composure) - Compose, document, version and organize your shell functions
* [dispatch](https://github.com/Mosai/workshop/blob/master/doc/dispatch.md) - A command line argument parser in 50 lines of portable shell script.
* [is.sh](https://github.com/qzb/is.sh) - An alternative for builtin test command, it will make your "if" statements pretty
* [lumberjack](https://github.com/molovo/lumberjack) - A logging interface for shell scripts
2015-08-22 15:20:06 -04:00
* [mo](https://github.com/tests-always-included/mo) - Mustache templates in pure bash
* [optparse](https://github.com/nk412/optparse) - A BASH wrapper for getopts, for simple command line arguments.
* [rerun](https://github.com/rerun/rerun) - A modular shell automation framework to organize your keeper scripts
* [revolver](https://github.com/molovo/revolver) - A reusable progress spinner for shell scripts
2018-04-07 19:07:26 -04:00
* [phases](https://github.com/sorokine/phases) - Minimally invasive bash preprocessor, select sections of your script to run
* [semver_bash](https://github.com/cloudflare/semver_bash) - Semantic Versioning in Bash
2017-07-18 22:58:10 -04:00
* [sh-semver](https://github.com/qzb/sh-semver) - Semver tool for bash - finds versions matching to specified rules
* [shellcheck](https://github.com/koalaman/shellcheck) - Static analysis tool for shell scripts
* [shellfire](https://github.com/shellfire-dev/shellfire) - A repository of namespaced, composable shell (bash, sh and dash) function libraries
* [shpec](https://github.com/rylnd/shpec) - A shell testing framework
2017-04-20 19:08:41 -04:00
* [shutit](https://ianmiell.github.io/shutit/) - Automation framework based on bash and pexpect
* [sub](https://github.com/basecamp/sub) - A delicious way to organize programs
* [ts](https://github.com/thinkerbot/ts) - A shell test script
* [urchin](https://github.com/tlevine/urchin) - An idiomatic shell testing framework that uses only shell commands
2015-07-09 16:59:36 -04:00
* [shunit2](https://github.com/kward/shunit2) - A unit test framework for Bash scripts with a flavour of JUnit/PyUnit.
2016-05-12 10:36:56 -04:00
* [rebash](https://github.com/jandob/rebash) - Scripting library/framework. Features: imports, exceptions, doc-tests ...
* [zunit](https://github.com/zunit-zsh/zunit) - A powerful unit testing framework for ZSH
2015-10-28 07:13:00 -04:00
2014-08-15 08:47:16 -04:00
# Guides
2018-08-08 16:45:41 -04:00
* [Bash Official Reference Manual](https://www.gnu.org/savannah-checkouts/gnu/bash/manual/bash.html)
2019-01-28 10:34:21 -05:00
* [Bash Hackers Wiki](https://wiki.bash-hackers.org/)
* [Greg Wooledge's (aka "greycat") wiki](https://mywiki.wooledge.org).
Specifically [Bash Guide](https://mywiki.wooledge.org/BashGuide), [Bash FAQ](https://mywiki.wooledge.org/BashFAQ) and [Bash Pitfalls](https://mywiki.wooledge.org/BashPitfalls)
2016-05-12 20:13:55 -04:00
* [Google's Shell Style Guide](https://google.github.io/styleguide/shell.xml)
2020-10-07 21:52:11 -04:00
* [The Linux Documentation Project: Bash Programming - Intro/How-to](https://tldp.org/HOWTO/Bash-Prog-Intro-HOWTO.html)
* [The Linux Documentation Project: Advanced Bash Scripting Guide](https://tldp.org/LDP/abs/html/)
2015-12-12 12:52:04 -05:00
* [WikiBooks: Bash Shell Scripting](https://en.wikibooks.org/wiki/Bash_Shell_Scripting)
* [Use the Unofficial Bash Strict Mode (Unless You Looove Debugging)](http://redsymbol.net/articles/unofficial-bash-strict-mode/)
* [The Art of Command Line](https://github.com/jlevy/the-art-of-command-line)
2019-01-28 10:34:21 -05:00
* [Learn Enough Command Line to Be Dangerous](https://www.learnenough.com/command-line-tutorial/basics)
2017-04-11 01:31:44 -04:00
* [A guide to learn bash](https://github.com/Idnan/bash-guide)
# Other Awesome Lists
2014-07-14 11:19:31 -04:00
Other amazingly awesome lists can be found in [awesome-awesome](https://github.com/emijrp/awesome-awesome) and [awesome-awesomeness](https://github.com/bayandin/awesome-awesomeness).
### See also
2017-06-05 16:19:03 -04:00
2018-03-19 08:03:51 -04:00
* [awesome-cli-apps](https://github.com/agarrharr/awesome-cli-apps)
2017-02-13 08:29:55 -05:00
* [awesome-fish][awesome-fish]
* [awesome-zsh][awesome-zsh]
2017-02-11 15:37:31 -05:00
* [terminals-are-sexy](https://github.com/k4m4/terminals-are-sexy)
2017-02-11 15:41:27 -05:00
2020-06-14 00:44:40 -04:00
[awesome-badge]: https://raw.githubusercontent.com/sindresorhus/awesome/d7305f38d29fed78fa85652e3a63e154dd8e8829/media/badge.svg
2020-08-02 13:20:23 -04:00
[awesome-fish]: https://github.com/jorgebucaran/awesome.fish
2017-02-11 15:41:27 -05:00
[awesome-link]: https://github.com/sindresorhus/awesome
[awesome-zsh]: https://github.com/unixorn/awesome-zsh-plugins