awesome-shell

CLI toolbox

A curated list of command-line frameworks and tools for improving productivity and efficiency

A curated list of awesome command-line frameworks, toolkits, guides and gizmos. Inspired by awesome-php.

GitHub

33k stars
778 watching
2k forks
last commit: about 2 years ago
Linked from 22 awesome lists

awesomeawesome-listbashclifishlistshellzsh

Awesome Shell

Awesome Zsh15,638almost 2 years ago
Awesome Fish4,250about 2 years ago
Awesome Bash8,030almost 2 years ago

Awesome Shell / Shells

bashGNU Project's shell (Bourne Again SHell)
elvishFriendly, expressive shell features like anonymous functions and data structures
esThe extensible shell, based on Plan 9's shell
fishSmart and user-friendly command line shell
ion1,484almost 2 years agoA modern system shell that features a simple, yet powerful, syntax. It is written entirely in Rust
ksh93562over 3 years agoKorn Shell
mksh211about 2 years agoMirBSD Korn Shell
murex1,511almost 2 years agoA smarter shell and scripting environment with advanced features designed for usability, safety and productivity (eg smarter DevOps tooling)
ngs1,486almost 2 years agoFully featured scripting language created specifically for Ops. REPL is being developed
nushell32,955almost 2 years agoA modern shell written in Rust
oksh364about 2 years agoPortable OpenBSD ksh
oshBash compatible, with new/modern Unix shell language called Oil
pdkshPublic domain Korn shell
powershella cross-platform task automation and configuration management framework, consisting of a command-line shell and scripting language
shell++156over 3 years agoFriendly and modern functional and object oriented shell script language
shenv43over 2 years agoSimple shell version management
tcshC shell with file name completion and command line editing
xonshPython-ish, BASHwards-looking shell language and command prompt
yash348almost 2 years agoA POSIX-compliant command line shell with built-in support for completion and prediction based on command history
zshPowerful shell with scripting language

Awesome Shell / Command-Line Productivity

AdvancedNewFile265over 2 years agoFast creation of files and directories in a recursive way. Inspired by the Vim plugin
ag26,229over 2 years agoSuper fast string search through a directory hierarchy
aliases577almost 2 years agoContextual, dynamic, organized aliases for bash
arttime973almost 2 years agoBeauty of text art meets functionality of clock, timer, pomodoro++ time manager
autoenv5,733almost 2 years agoDirectory-based environments
await149almost 2 years agosingle binary that run list of commands in parallel and waits for their termination
bartib690over 2 years agoA 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
bashhub1,269about 2 years agoBash history in the cloud. Indexed and searchable
boilr1,727over 3 years agoA blazingly fast CLI tool for creating projects from boilerplate templates
boom1,283over 3 years agoStore links and snippets in the command line
borg1,603over 8 years agoA terminal based search engine for bash commands
broot10,858almost 2 years agoA better way to navigate directories
browsh17,142over 2 years agoThe modern text-based browser
Buku6,546almost 2 years agoPowerful command-line bookmark manager
byobuText-based window manager and terminal multiplexer
cod521almost 3 years ago— A completion daemon for shell that learns when you invoke commands
CloudClip79over 8 years agoYour own clipboard in the cloud, copy and paste text with gist between different systems
ddgr2,975about 2 years agoDuckDuckGo from the terminal
desk2,545about 4 years agoA lightweight workspace manager for the shell
direnv12,741almost 2 years agoAn environment switcher for the shell, compare with autoenv
dnote2,808about 2 years agoA simple command line notebook with multi-device sync and web interface
eureka781almost 3 years agoCLI tool to input and store your ideas without leaving the terminal
fasd5,903over 6 years agoCommand-line productivity booster, offers quick access to files and directories
fd34,453almost 2 years agoA simple, fast and user-friendly alternative to find
foxy43over 8 years agoPlain text bookmarks for Firefox and surf browsers
fselect4,030almost 2 years agoFind files with SQL-like queries
funky647about 2 years agoExtends functionality of shell functions making them more powerful and flexible
fz531over 2 years agoSeamless fuzzy tab completion for z
fzf66,191almost 2 years agoA command-line fuzzy finder
gitmux635over 2 years agoShow Git status in Tmux status bar
googler6,112almost 5 years agoGoogle Search, Google Site Search, Google News from the terminal
googlr46over 7 years agoCommand line tool that lets you search Google from your terminal
has689almost 2 years agohelps you check presence of various command line tools and their versions on path
how25,727over 3 years agofinds the simplest way to do something in a unix shell. It's like , but you can query it in natural language
navi15,273almost 2 years agoAn interactive cheatsheet tool for the command-line
hhighlighter470over 2 years agoColorize words in a command output
hr1,280almost 4 years agofor your terminal
hss353over 4 years agoAn interactive parallel ssh client featuring autocomplete and asynchronous execution
hstr4,120about 2 years agoBash History Suggest Box
k1,779over 3 years agok is a Zsh script to make directory listings more readable, adding Git status, fileweight colors and rotting dates
k alias21over 10 years agoget kool aliases (and more) working with a simple one-liner
lf7,839almost 2 years agoTerminal file manager written in Go, inspired by ranger
lf.sh44over 3 years agoQuickly search files with fewer typings and do many more (grepping, copying path to clipboard, etc)
lowcharts205about 2 years agoDraw low-resolution graphs in terminal
LmodLua-based Environment Modules that enhances Tcl-based modules while being backward compatible (compare to modules)
loop674almost 4 years agoWrite and control complex loops with as one-liners
marker2,052over 2 years agoBookmark your shell commands
mackup14,651about 2 years agoKeep your application settings in sync (OS X/Linux)
mcfly6,994almost 2 years agoFly through your shell history. Great Scot!
modulesClassical Tcl-based Environment Modules managing the shell environment (compare to Lmod, direnv, and autoenv)
nnn19,467almost 2 years agoFile browser and disk usage analyzer with excellent desktop integration
ok-sh89over 2 years agoDo 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
parallelBuild and execute shell command lines from standard input in parallel
passManage passwords from the command line with GPG encryption and optional git integration
pathpicker5,133about 2 years agoAccepts 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
pdd381over 2 years agoTiny date, time diff calculator with timers
percol3,303over 2 years agoAdds flavor of interactive filtering to the traditional pipe concept of UNIX shell
q70over 6 years agoVim like macro registers for your Bash and Zsh Shell
qfc580over 4 years agoFile-completion widget for Bash and Zsh
resh1,015over 3 years agoContextual shell history for Zsh and Bash
rg49,203almost 2 years agoripgrep is a line oriented search tool that combines the usability of The Silver Searcher with the raw speed of GNU grep
screenGNU terminal multiplexer
shell-history112about 6 years agoVisualize your shell usage with Highcharts
SHML442over 7 years agoStyle framework for the terminal (Shell Markup Language)
slugify307over 4 years agoCommand that converts filenames and directories to a web friendly format
sman292almost 9 years agoA command-line snippet manager
spark6,008over 4 years ago▁▂▃▅▂▇ in your shell
spark.fish348over 5 years ago▁▂▃▅ Sparkline Generator
sheet262over 3 years agoText snippets for the command line
spot932over 2 years agoTiny file search utility
snips82over 2 years agoCommand line tool to manage snippets of code
sqlline625about 3 years agoShell for issuing SQL to relational databases via JDBC (multiline, completion, highlighting, dialect support)
sshfs1,175about 4 years agoA tool for mounting remote file systems over SSH
sudocabulary161over 9 years agoLearn English Vocabulary from your terminal
surfrawbrowse specific site and search the web from your terminal without browser
task-manager20over 9 years agoExecute all your scripts with just two or three keystrokes
td-cli196about 2 years agoA todo command line manager to organize and manage your todos across multiple projects
tere1,707almost 2 years agoA faster alternative to cd + ls
thefuck85,858about 2 years agoFix common shell mistakes by using an easy to remember command
tldr712over 2 years agoA fully-functional bash client for tldr, simplified and community-driven man pages
tmuxAmazing terminal multiplexer
undollar176about 8 years agoundollar bites the dollar sign off the tip of the command you just pasted into your terminal
usql9,125almost 2 years agoUniversal command-line interface for SQL databases
v448about 7 years agoz for vim
wemux3,635almost 4 years agoMulti-User Tmux Made Easy
xiki3,760over 6 years agoMakes the shell console more friendly and powerful
xplr4,242about 2 years agoA hackable, minimal, fast TUI file explorer
xsv10,430over 2 years agoa fast CSV command line toolkit written in Rust
xxh5,424about 2 years agoBring your favorite shell wherever you go through the SSH

Awesome Shell / Command-Line Productivity / Directory Navigation

aliasme115over 5 years agoalias helper to change directory quickly
autojump16,322almost 3 years agoA cd command that learns - easily navigate directories from the command line
bashmarks1,902about 2 years agoDirectory bookmarks for the shell
bd922about 4 years agoQuickly go back to a parent directory
commacd364almost 7 years agoA faster way to move around in Bash
enhancd2,579over 2 years agoA next-generation cd command with an interactive filter
goto878about 2 years agoA shell utility for navigation to aliased directories supporting auto-completion
jump1,805over 2 years agoJump helps you navigate your file system faster by learning your habits
lazy-cd21over 6 years agoSimple bash commands for bookmarked navigation of the file system, complete with bash-completion
up174about 6 years agoAscend directories by name or count; for bash, zsh, and fish
z16,404over 2 years agoz is the new j, yo
z.lua3,016almost 2 years agoA new cd command that helps you navigate faster by learning your habits
zoxide23,350almost 2 years agoA faster way to navigate your filesystem, written in Rust
zpyi106about 9 years agoPython in Zsh - Easy python scripting in shell

Awesome Shell / Customization

aphrodite-terminal-theme150over 2 years ago— Minimalistic Aphrodite theme (prompt) for sexy terminals that works in bash, fish and zsh
base16-builder432over 5 years agoBase16-Builder
bash-full-of-colors183over 4 years agoPowerful prompt with screen, tmux, git support and many more
bash-git-prompt6,741about 2 years agoAn informative and fancy Bash prompt for Git users
bash-powerline901about 3 years agoPowerline-style Bash prompt in pure Bash script
bashstrap1,558over 7 years agoA quick way to spruce up OSX terminal
bullet-train-oh-my-zsh-theme2,827about 2 years agoAn oh-my-zsh shell theme based on the Powerline Vim plugin
emojify1,556over 2 years agoEmoji on the command line
flatui-terminal-themeNicer colors for terminal
geometry941almost 3 years agoA minimal ZSH theme where any function can be added to the left prompt or (async) right prompt on the fly
git-prompt327over 2 years agoBash prompt with Git, SVN and HG modules
gittify74over 4 years agoA colorful Bash prompt + customized Git aliases
Gogh - Color Scheme9,422almost 2 years agoColor Scheme for Gnome Terminal
liquidprompt4,516almost 2 years agoA full-featured & carefully designed adaptive prompt for Bash & Zsh
mysql-colorize105almost 6 years agoColorization for mysql comand-line client
oh-my-git3,668about 4 years agoAn opinionated git prompt for bash and zsh
oh-my-poshPrompt theme engine for any shell and platform written in go
polyglot182over 2 years agoAn informative Git prompt that works in bash, zsh, ksh, mksh, pdksh, oksh, dash, yash, busybox sh, and osh
powerlevel10k46,947almost 2 years agoSuper flexible awesome powerline ZSH theme
sexy-bash-prompt1,139over 5 years agoBash prompt with colors, Git statuses, and Git branches
starshipFast, customisable, cross-shell prompt written in rust
synth-shell1,015almost 2 years agoGreeter with a customizable status report and a fancy bash prompt

Awesome Shell / For Developers

1Password SSH AgentAuthenticate Git and SSH workflows with biometric unlock using 1Password
ackA grep-like search tool optimized for source code
add-gitignore678almost 3 years agoInteractive CLI that generates a .gitignore for your project based on your needs
bcal636over 2 years agoByte CALculator for storage conversions and calculations
bitwise652about 3 years agoTerminal based interactive bit manipulator in curses
bocker11,950almost 9 years agoDocker implemented in 100 lines of bash
cloc19,866almost 2 years agoCount Lines of Code
doclt47about 8 years agoA command line interface to Digital Ocean
dokku29,468almost 2 years agoDocker powered mini-Heroku. The smallest PaaS implementation you've ever seen
forgit4,484almost 2 years agoUtility tool for taking advantage of fuzzy finder fzf
git-extra-commands1,024almost 2 years agoMany Git extra utilities. Churn, cut-branch, improved-merge and many more
git-extras17,416almost 2 years agoGit utilities -- repo summary, repl, changelog population, author commit percentages and more
git-open3,327almost 2 years agoType to open the GitHub page or website for a repository in your browser
git-quick-stats6,397almost 2 years agoGit quick statistics is a simple and efficient way to access various statistics in git repository
git-semver382over 6 years agoGit plugin for easing semantic versioning and changelog validation
git-sh734over 3 years agoA customized Bash environment suitable for Git work
gita1,684over 2 years agoA command-line tool to manage multiple git repos
hub22,851over 2 years agohub helps you win at git
just22,560almost 2 years agoTask runner for saving and running project-specific commands
licins23about 4 years agoInsert commented software licenses into source code
mkdkr370over 5 years agoMakefile + Docker = CI Pipeline
mrMultiple Repository management tool
nve694almost 2 years agoRun any command on specific Node.js versions
overcommit3,924almost 2 years agoA fully configurable and extendable Git hook manager
pre-commitA framework for managing and maintaining multi-language pre-commit hooks
rebound4,109over 4 years agoInstantly browse Stack Overflow results in your terminal when you get a compiler error
repren355almost 2 years agoCommand-line search-and-replace and file-renaming swiss army knife
slap6,144almost 5 years agoSublime-like terminal-based text editor that runs on Node.js
shipit568over 6 years agoMinimalistic SSH deployment
starring155about 9 years agoAutomatically star the npm-packages that you are using on GitHub
tag597over 3 years agoInstantly jump to your ag matches
trunkBlazingly fast meta code checker and formatter
vmn62about 2 years agogit-based automatic versioning and state recovery solution agnostic to language or architecture
wipe-modules354over 3 years agoA little agent that removes the node_modules folder of non-active projects

Awesome Shell / System Utilities

atopASCII full-screen performance monitor that is capable of reporting the activity of all processes
bat50,076almost 2 years agoA clone with wings
bmon1,204about 3 years agoReal-time network bandwidth monitor and rate estimator with human-friendly visual output
btop21,529almost 2 years agoLinux/OSX/FreeBSD resource monitor
catcli198over 2 years agoThe command line catalog tool for your offline data
ccat3,168about 4 years agoccat is the colorizing cat. It works similar to cat but displays content with syntax highlighting
exa23,694about 2 years agoA modern version of
progress8,589almost 2 years agoLinux tool to show progress for , , , and more
stronghold1,105almost 7 years agoEasily configure MacOS security settings from the terminal
glances27,127almost 2 years agoGlances an Eye on your system
goaccess18,649almost 2 years agoGoAccess is a real-time web log analyzer and interactive viewer that runs in a terminal in *nix systems
hblock1,640almost 2 years agoHosts-file based adblocker
histstat98over 4 years agoHistory for netstat
htop5,850almost 6 years agoA ncurses based interactive process viewer which aims to be a better
lnavAn advanced log file viewer for the small-scale
logdissect148about 2 years agoCLI utility and Python API for analyzing log files and other data
ls++507over 2 years agoColorized ls on steroids
lsd13,683almost 2 years agoLSDeluxe, rewrite of GNU ls with lot of added features like colors, icons, tree-view and more formatting options
lsp529over 5 years agoAn improved , with file descriptions in plain language and intelligent file grouping
maza1,803almost 2 years agoLocal ad blocker. Like Pi-hole but local and using your operating system
mtr2,721about 2 years agoThe functionality of the 'traceroute' and 'ping' programs in a single network diagnostic tool
ncduNCurses Disk Usage
nmtui406almost 2 years agoText User Interface for controlling NetworkManager
powertop1,078over 2 years agoBattery/Power usage and device stats monitoring command-line tool, with tune-up options
prettyping1,212almost 3 years agoMaking the output of prettier, more colorful, more compact, and easier to read
procdog77about 8 years agoLightweight command-line control of long-lived processes like servers
quick-secure415over 6 years agoQuickly secure and harden UNIX/Linux systems
rng31over 2 years agoCopy range of lines from file or stdin to stdout
tiptop1,785almost 2 years agoGraphical command-line system monitor
wifi-wand67almost 2 years agoa Ruby command line application for managing WiFi on MacOS (install by )
xiringuito1,118over 4 years agoSSH-based "VPN for poors"

Awesome Shell / Downloading and Serving

aria236,144about 2 years agoaria2 is a lightweight multi-protocol & multi-source, cross platform download utility operated in command-line. It supports HTTP/HTTPS, FTP, BitTorrent and Metalink
balls860about 10 years agoBash on Balls
bashttpd1,514almost 7 years agoA web server written in Bash
bashhub-server306over 3 years agoPrivate cloud shell history. Open source server for bashhub
bitpocket1,030about 3 years ago"DIY Dropbox" or "2-way directory (r)sync with proper deletion"
Dropbox-Uploader6,570over 2 years agoDropbox Uploader is a Bash script which can be used to upload, download, list or delete files from Dropbox
httpie34,188almost 2 years agoHTTPie is a command line HTTP client, a user-friendly cURL replacement
HTTPLab4,057over 2 years agoThe interactive web server, let you inspect HTTP requests and forge responses
Kapow!614almost 2 years agoIf you can script it, you can HTTP it
ngincat177about 12 years agoTiny Bash HTTP server using netcat
resty2,651over 3 years agoLittle command line REST client that you can use in pipelines
shell2http1,356almost 2 years agoHTTP-server to execute shell commands. Designed for development, prototyping or remote control
tshare130almost 3 years agoFile sharing from commandline
vesper209almost 7 years ago🍸Vesper is a HTTP framework for Bash/Unix Shell
xh5,676almost 2 years agoFriendly and fast tool for sending HTTP requests
yt-dlp92,706almost 2 years agoCommand-line program to download videos from YouTube.com and other video sites

Awesome Shell / Multimedia and File Formats

adb-export108about 4 years agoExport Android content providers to CSV format
Android-Kitchen1,035over 5 years agoA text-based kitchen for Android ROM customization. Uses shell scripts and works with Cygwin/OS X/Linux
Beets13,003almost 2 years agoMusic library manager and MusicBrainz tagger
cmus5,605almost 2 years agoCross-platform cli audio player
dasel7,248almost 2 years agoQuery and update data structures using selectors from the command line. Comparable to / but supports JSON, YAML, TOML and XML with zero runtime dependencies
dzr203about 2 years agoCross-platform Deezer.com audio player
fx19,100about 2 years agoCommand-line JSON processing tool by anononymus JavaScript functions
gifgen554over 3 years agoSimple high quality GIF encoding
image-scraper763over 8 years agoA cool command line image scraper with a lot of features
imgp1,046almost 2 years agoBlazing fast batch image resizer and rotator
jc7,955almost 2 years agoConvert command output, file-types, and common strings to JSON or YAML for easier use in scripts
jo4,685almost 2 years agoA small utility to create JSON objects from command-line arguments
jq30,734almost 2 years agoSed for json data. You can use it to slice and filter and map and transform structured data
korkut373almost 4 years agoQuick and simple image processing at the command line
library377almost 2 years agoCreate 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
mpvLets you play most audio and video formats (using ASCII characters) in the shell as well as in a GUI
nehm86over 6 years agoConsole tool, which downloads, sets IDv3 tags and adds to your iTunes (if you use it) your SoundCloud likes in convenient way
PiCAST1,770over 6 years agoPiCAST turns your $35 Raspberry Pi in to a Chromecast like Device
sejda514almost 2 years agoCommand line manipulation of PDF documents (split, merge, rotate, convert to jpg, extract text, etc)
visidata7,962almost 2 years agoA terminal spreadsheet multitool for exploring and arranging data (csv/json/xml/xls/yaml/etc)
xidel690over 2 years agoCli tool to filter, map and create HTML/XML/JSON data with (Turing-complete) XPath and XQuery
xmlstarletOld but powerful tool for command-line XML formatting, filtering, and manipulation
yq12,469almost 2 years agoyq is a portable command-line YAML processor

Awesome Shell / Applications

ansiweather1,878over 2 years agoWeather in your terminal, with ANSI colors and Unicode symbols
awless4,985about 4 years agoA powerful, innovative and small surface CLI to manage AWS
bashblog1,672over 3 years agoA Bash script that handles blog posting
carbon-now-cli5,802almost 2 years ago🎨 Beautiful images of your code — from right inside your terminal
choosealicense-cli72over 6 years agoChoose an OSS license from the comfort of your terminal
cointop4,069over 2 years agoThe fastest and most interactive terminal based UI application for tracking cryptocurrencies
dstask808about 2 years agoSingle binary terminal-based TODO manager with git-based sync + markdown notes per task
editly4,805about 2 years agoCommand line video editor
facebook-cli397over 4 years agoFacebook command line tool
fanyi1,442almost 2 years agoTranslate English to Chinese in terminal
gcalcli3,340almost 2 years agoGoogle Calendar command line interface
geeknote2,105over 5 years agoCommand line evernote client
haxor-news3,995over 4 years agoBrowse Hacker News like a haxor
hn-cli460about 8 years agoBrowse Hacker News from the comfort of your Terminal
iponmap318almost 10 years agoDraw point on world map using ip address
isitup66about 3 years agoCheck whether a website is up or down
jrnl6,538almost 2 years agoA simple command line journal application that stores your journal in a plain text file
kanban.bash904almost 2 years agocommandline asciii kanban board for minimalist productivity bash hackers (csv-based)
ledger5,410almost 2 years agoCommand line accounting
licen38over 11 years agoGenerate your license. Yet another lice, but implement with Jinja2 and docopt
md2png36almost 8 years agoConvert markdown to PNG image
moviemon208almost 10 years agoEverything about your movies within the command line
nomino578almost 2 years agoBatch rename utility using regex, sort and map file options
pcalc552over 2 years agoCalculator made for programmers working with multiple number representations, sizes, and overall close to the bits
pockyt506over 2 years agoRead, Manage, and Automate your collection
pushblast97almost 11 years agoGet PushBullet notifications when a shell program exits
pushbullet-bash236almost 3 years agoBash interface to the PushBullet API
ranger15,729almost 2 years agoA console file manager with VI key bindings
Reddit Terminal Viewer4,651over 3 years agoBrowse Reddit from your terminal
SAWS5,255over 2 years agoA Supercharged AWS CLI
taskbook8,986about 2 years agoTasks, boards & notes for the command-line habitat
taskwarriorA command-line TODO list manager
terjira888over 3 years agoCommand line power tool for Jira
ticker5,030almost 2 years ago— Terminal stock ticker with live updates and position tracking
vl27over 2 years agoURL link checker on text documents
wego7,864almost 2 years agoWeather app for the terminal
whales384over 7 years agoA tool to automatically dockerize your applications
whereami168over 3 years agoGet your geolocation information from the CLI
wttr.in24,953almost 2 years agoThe right way to check the weather (curl wttr.in)

Awesome Shell / Games

bash2048899over 2 years agoBash implementation of 2048 game
minesweeper63over 6 years agoBash implementation of minesweeper
nudoku333about 2 years agoncurses based sudoku game written in C
piu-piu739almost 2 years agoHorizontal scroller game in bash with multiplayer mode!
sedtris536over 6 years agoTetris in sed
sed-scripts44over 13 years agoArkanoid and Sokoban written using sed
SHTAPReusable text adventure engine for Bash 4
tty-solitaire279about 2 years agoPlay solitaire in your terminal!

Awesome Shell / Shell Package Management

bash-it14,322almost 2 years agoA community Bash framework
basher1,166over 2 years agoA package manager for shell scripts
bashing79over 6 years agoSmashing Bash into Pieces
bpkgJavaScript has npm, Ruby has Gems, Python has pip and now Shell has bpkg
dotdrop1,800almost 2 years agoSave your dotfiles once, deploy them everywhere
dotfiler240almost 2 years ago– Shell agnostic git based dotfiles package manager, written in Python
fresh1,183about 3 years agoKeep your dotfiles fresh
homeshick2,116almost 2 years agoGit dotfile synchronizer written in Bash
shallow-backup1,249almost 2 years agoEasily create lightweight documentation of installed packages, dotfiles, and more
shundle82over 6 years agoPlugin manager for shell scripts
vcsh2,198about 2 years agoConfig manager based on Git
yadmGit-based dotfiles manager supporting encryption, alternates, and bootstrapping

Awesome Shell / Shell Script Development

ansi654almost 5 years agoANSI escape codes in pure bash - change text color, position the cursor, much more
assert.sh486over 4 years agoBash unit testing framework
bashew267over 2 years agobash script creator - from small stand-alone script to complex projects with CI/CD and testing
bashful603over 5 years agoA collection of libraries to simplify writing Bash scripts
Bashlets76over 5 years agoA modular extensible toolbox for Bash
bashlyBash command line framework and CLI generator
bashmanager97over 10 years agomini bash framework for creating command line tools
bashwithnails34about 3 years agoa Bash framework written just for fun with testing, dependency management & packaging
bash-language-server2,172almost 2 years ago-based Bash language server
bash-modules135over 4 years agofunctions for developing with enabled
bats5,014almost 2 years agoBash Automated Testing System
composure331almost 4 years agoCompose, document, version and organize your shell functions
crash65over 9 years agoProper error handling, exceptions and try/catch for ZSH
critic.sh456about 6 years agoDead simple testing framework for Bash with coverage reporting
dispatch89almost 12 years agoA command line argument parser in 50 lines of portable shell script
esh217over 4 years agoA simple templating engine based on shell, implemented in ~290 lines of POSIX shell and awk
Fishtape349over 2 years agoTAP producer and test harness for fish
getoptions421almost 2 years agoAn elegant option parser for shell scripts (sh, bash and all POSIX shells)
getopts.fish223over 5 years agoCLI parser for fish
is.sh162almost 7 years agoAn alternative for builtin test command, it will make your "if" statements pretty
lumberjack43about 10 years agoA logging interface for shell scripts
mo571almost 2 years agoMustache templates in pure bash
optparse159over 4 years agoA BASH wrapper for getopts, for simple command line arguments
rerun458over 8 years agoA modular shell automation framework to organize your keeper scripts
revolver146about 2 years agoA reusable progress spinner for shell scripts
phases15over 8 years agoMinimally invasive bash preprocessor, select sections of your script to run
powscript159almost 2 years agobash transpiler written in bash (coffeescript for bash)
semver_bash251almost 2 years agoSemantic Versioning in Bash
sh-semver29about 5 years agoSemver tool for bash - finds versions matching to specified rules
shellcheck36,593almost 2 years agoStatic analysis tool for shell scripts
shellfire1,207almost 11 years agoA repository of namespaced, composable shell (bash, sh and dash) function libraries
shellspec1,178about 2 years agoA full-featured BDD unit testing framework for dash, bash, ksh, zsh and all POSIX shells
shfmt7,376almost 2 years agoA shell parser, formatter, and interpreter with bash support; includes shfmt
shpec377almost 4 years agoA shell testing framework
shutitAutomation framework based on bash and pexpect
sub1,745about 5 years agoA delicious way to organize programs
ts59almost 6 years agoA shell test script
urchinAn idiomatic shell testing framework that uses only shell commands
shunit21,616almost 2 years agoA unit test framework for Bash scripts with a flavour of JUnit/PyUnit
rebash74over 4 years agoScripting library/framework. Features: imports, exceptions, doc-tests
zunit209about 3 years agoA powerful unit testing framework for ZSH

Guides

Bash Official Reference Manual
Bash Hackers Wiki
Greg Wooledge's (aka "greycat") wiki. Specifically , and
Google's Shell Style Guide
The Linux Documentation Project: Bash Programming - Intro/How-to
The Linux Documentation Project: Advanced Bash Scripting Guide
WikiBooks: Bash Shell Scripting
Use the Unofficial Bash Strict Mode (Unless You Looove Debugging)
The Art of Command Line154,018about 2 years ago
Learn Enough Command Line to Be Dangerous
A guide to learn bash11,891about 2 years ago
Shell Field Guide

Other Awesome Lists / See also

awesome-cli-apps15,535almost 2 years ago
awesome-fish4,250about 2 years ago
awesome-zsh15,638almost 2 years ago
awesome-bash8,030almost 2 years ago
terminals-are-sexy12,316about 2 years ago

Backlinks from these awesome lists:

More related projects: