An open API service indexing awesome lists of open source software.

awesome-shell

A curated list of awesome command-line frameworks, toolkits, guides and gizmos. Inspired by awesome-php.
https://github.com/alebcay/awesome-shell

Last synced: 3 days ago
JSON representation

  • Command-Line Productivity

      • modules - Classical Tcl-based Environment Modules managing the shell environment (compare to Lmod, direnv, and autoenv)
      • nnn - File browser and disk usage analyzer with excellent desktop integration
      • 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.
      • 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 - Tiny date, time diff calculator with timers
      • percol - Adds flavor of interactive filtering to the traditional pipe concept of UNIX shell
      • q - Vim like macro registers for your Bash and Zsh Shell
      • qfc - File-completion widget for Bash and Zsh
      • resh - Contextual shell history for Zsh and Bash
      • rg - ripgrep is a line oriented search tool that combines the usability of The Silver Searcher with the raw speed of GNU grep
      • shell-history - Visualize your shell usage with Highcharts
      • SHML - Style framework for the terminal (Shell Markup Language)
      • slugify - Command that converts filenames and directories to a web friendly format
      • sman - :bug: A command-line snippet manager
      • spark - ▁▂▃▅▂▇ in your shell
      • spark.fish - ▁▂▃▅ Sparkline Generator
      • sheet - Text snippets for the command line
      • spot - Tiny file search utility
      • snips - Command line tool to manage snippets of code.
      • xiki - Makes the shell console more friendly and powerful
      • xplr - A hackable, minimal, fast TUI file explorer
      • xsv - a fast CSV command line toolkit written in Rust
      • xxh - Bring your favorite shell wherever you go through the SSH.
      • AdvancedNewFile - Fast creation of files and directories in a recursive way. Inspired by the Vim plugin.
      • ag - Super fast string search through a directory hierarchy
      • aliases - Contextual, dynamic, organized aliases for bash
      • autoenv - Directory-based environments.
      • await - single binary that run list of commands in parallel and waits for their termination
      • 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.
      • bashhub - :cloud: Bash history in the cloud. Indexed and searchable.
      • boilr - A blazingly fast CLI tool for creating projects from boilerplate templates.
      • boom - Store links and snippets in the command line
      • borg - A terminal based search engine for bash commands
      • broot - A better way to navigate directories
      • 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.
      • navi - An interactive cheatsheet tool for the command-line
      • hhighlighter - Colorize words in a command output
      • hr - `<hr />` for your terminal
      • hstr - Bash History Suggest Box
      • lf.sh - Quickly search files with fewer typings and do many more (grepping, copying path to clipboard, etc)
      • lowcharts - Draw low-resolution graphs in terminal
      • Lmod - Lua-based Environment Modules that enhances Tcl-based modules while being backward compatible (compare to modules)
      • loop - Write and control complex loops with as one-liners
      • marker - Bookmark your shell commands
      • byobu - Text-based window manager and terminal multiplexer
      • modules - Classical Tcl-based Environment Modules managing the shell environment (compare to Lmod, direnv, and autoenv)
      • arttime - Beauty of text art meets functionality of clock, timer, pomodoro++ time manager
      • cod - -help` commands
      • CloudClip - Your own clipboard in the cloud, copy and paste text with gist between different systems
      • dnote - A simple command line notebook with multi-device sync and web interface
      • ddgr - DuckDuckGo from the terminal
      • tmux - Amazing terminal multiplexer
      • browsh - The modern text-based browser
      • Buku - Powerful command-line bookmark manager
      • fasd - Command-line productivity booster, offers quick access to files and directories
      • fd - A simple, fast and user-friendly alternative to find.
      • foxy - Plain text bookmarks for Firefox and surf browsers.
      • fselect - Find files with SQL-like queries.
      • funky - Extends functionality of shell functions making them more powerful and flexible.
      • fzf - A command-line fuzzy finder
      • gitmux - Show Git status in Tmux status bar
      • googler - Google Search, Google Site Search, Google News from the terminal
      • googlr - Command line tool that lets you search Google from your terminal.
      • has - `has` helps you check presence of various command line tools and their versions on path
      • hss - An interactive parallel ssh client featuring autocomplete and asynchronous execution
      • v - z for vim.
      • desk - A lightweight workspace manager for the shell
      • direnv - An environment switcher for the shell, compare with autoenv
      • k - k is a Zsh script to make directory listings more readable, adding Git status, fileweight colors and rotting dates
      • k alias - get kool aliases (and more) working with a simple one-liner
      • lf - Terminal file manager written in Go, inspired by ranger
      • mcfly - Fly through your shell history. Great Scot!
      • 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.
      • screen - GNU terminal multiplexer
      • sqlline - Shell for issuing SQL to relational databases via JDBC (multiline, completion, highlighting, dialect support)
      • sshfs - A tool for mounting remote file systems over SSH
      • sudocabulary - Learn English Vocabulary from your terminal
      • surfraw - browse specific site and search the web from your terminal without browser.
      • task-manager - Execute all your scripts with just two or three keystrokes.
      • td-cli - A todo command line manager to organize and manage your todos across multiple projects.
      • tere - A faster alternative to cd + ls
      • thefuck - Fix common shell mistakes by using an easy to remember command
      • tldr - A fully-functional bash client for tldr, simplified and community-driven man pages
      • undollar - undollar bites the dollar sign off the tip of the command you just pasted into your terminal
      • usql - Universal command-line interface for SQL databases.
      • wemux - Multi-User Tmux Made Easy
      • commacd - A faster way to move around in Bash
      • enhancd - :rocket: A next-generation cd command with an interactive filter
      • goto - A shell utility for navigation to aliased directories supporting auto-completion
      • up - Ascend directories by name or count; for bash, zsh, and fish.
      • z - z is the new j, yo
      • z.lua - A new cd command that helps you navigate faster by learning your habits
      • aliasme - alias helper to change directory quickly
      • autojump - A cd command that learns - easily navigate directories from the command line
      • bashmarks - Directory bookmarks for the shell
      • bd - Quickly go back to a parent directory
      • jump - Jump helps you navigate your file system faster by learning your habits.
      • lazy-cd - Simple bash commands for bookmarked navigation of the file system, complete with bash-completion.
      • zoxide - A faster way to navigate your filesystem, written in Rust
      • zpyi - Python in Zsh - Easy python scripting in shell
  • Customization

  • For Developers

      • bcal - Byte CALculator for storage conversions and calculations
      • bitwise - Terminal based interactive bit manipulator in curses.
      • dokku - Docker powered mini-Heroku. The smallest PaaS implementation you've ever seen.
      • forgit - Utility tool for `git` taking advantage of fuzzy finder fzf.
      • git-extras - Git utilities -- repo summary, repl, changelog population, author commit percentages and more
      • git-open - Type `git open` to open the GitHub page or website for a repository in your browser
      • rebound - Instantly browse Stack Overflow results in your terminal when you get a compiler error
      • repren - Command-line search-and-replace and file-renaming swiss army knife
      • slap - Sublime-like terminal-based text editor that runs on Node.js
      • shipit - Minimalistic SSH deployment
      • starring - Automatically star the npm-packages that you are using on GitHub.
      • tag - Instantly jump to your ag matches.
      • vmn - git-based automatic versioning and state recovery solution agnostic to language or architecture
      • wipe-modules - A little agent that removes the node_modules folder of non-active projects
      • 1Password SSH Agent - Authenticate Git and SSH workflows with biometric unlock using 1Password
      • ack - A grep-like search tool optimized for source code.
      • add-gitignore - Interactive CLI that generates a .gitignore for your project based on your needs.
      • bocker - Docker implemented in 100 lines of bash
      • cloc - Count Lines of Code
      • doclt - A command line interface to Digital Ocean
      • git-extra-commands - Many Git extra utilities. Churn, cut-branch, improved-merge and many more.
      • git-quick-stats - Git quick statistics is a simple and efficient way to access various statistics in git repository.
      • git-semver - Git plugin for easing semantic versioning and changelog validation
      • git-sh - A customized Bash environment suitable for Git work
      • gita - A command-line tool to manage multiple git repos.
      • hub - hub helps you win at git.
      • just - Task runner for saving and running project-specific commands.
      • licins - Insert commented software licenses into source code.
      • mkdkr - Makefile + Docker = CI Pipeline
      • nve - Run any command on specific Node.js versions.
      • overcommit - A fully configurable and extendable Git hook manager
      • trunk - Blazingly fast meta code checker and formatter
  • System Utilities

      • hblock - Hosts-file based adblocker
      • histstat - History for netstat
      • prettyping - Making the output of `ping` prettier, more colorful, more compact, and easier to read.
      • procdog - Lightweight command-line control of long-lived processes like servers
      • quick-secure - Quickly secure and harden UNIX/Linux systems
      • rng - Copy range of lines from file or stdin to stdout.
      • xiringuito - SSH-based "VPN for poors"
      • progress - Linux tool to show progress for `cp`, `rm`, `dd`, and more...
      • stronghold - Easily configure MacOS security settings from the terminal.
      • htop - A ncurses based interactive process viewer which aims to be a better `top`
      • logdissect - CLI utility and Python API for analyzing log files and other data.
      • ls++ - Colorized ls on steroids
      • glances - Glances an Eye on your system
      • goaccess - GoAccess is a real-time web log analyzer and interactive viewer that runs in a terminal in \*nix systems.
      • bat - A `cat` clone with wings
      • bmon - Real-time network bandwidth monitor and rate estimator with human-friendly visual output
      • btop - Linux/OSX/FreeBSD resource monitor
      • catcli - The command line catalog tool for your offline data
      • ccat - ccat is the colorizing cat. It works similar to cat but displays content with syntax highlighting.
      • exa - A modern version of `ls`.
      • lsd - LSDeluxe, rewrite of GNU ls with lot of added features like colors, icons, tree-view and more formatting options.
      • lsp - An improved `ls`, with file descriptions in plain language and intelligent file grouping
      • maza - Local ad blocker. Like Pi-hole but local and using your operating system.
      • mtr - The functionality of the 'traceroute' and 'ping' programs in a single network diagnostic tool.
      • ncdu - NCurses Disk Usage
      • nmtui - Text User Interface for controlling NetworkManager
      • powertop - Battery/Power usage and device stats monitoring command-line tool, with tune-up options.
      • tiptop - Graphical command-line system monitor.
      • wifi-wand - a Ruby command line application for managing WiFi on MacOS (install by `gem install wifi-wand`)
  • Downloading and Serving

      • 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 - Bash on Balls
      • bashttpd - A web server written in Bash
      • bashhub-server - Private cloud shell history. Open source server for bashhub
      • bitpocket - "DIY Dropbox" or "2-way directory (r)sync with proper deletion"
      • Dropbox-Uploader - Dropbox Uploader is a Bash script which can be used to upload, download, list or delete files from Dropbox
      • httpie - HTTPie is a command line HTTP client, a user-friendly cURL replacement
      • HTTPLab - The interactive web server, let you inspect HTTP requests and forge responses.
      • Kapow! - If you can script it, you can HTTP it.
      • ngincat - Tiny Bash HTTP server using netcat
      • resty - Little command line REST client that you can use in pipelines
      • shell2http - HTTP-server to execute shell commands. Designed for development, prototyping or remote control
      • tshare - File sharing from commandline.
      • vesper - 🍸Vesper is a HTTP framework for Bash/Unix Shell
      • xh - Friendly and fast tool for sending HTTP requests
      • yt-dlp - Command-line program to download videos from YouTube.com and other video sites
  • Multimedia and File Formats

      • Beets - Music library manager and MusicBrainz tagger
      • cmus - Cross-platform cli audio player.
      • dasel - Query and update data structures using selectors from the command line. Comparable to [jq](https://github.com/stedolan/jq) / [yq](https://github.com/kislyuk/yq) but supports JSON, YAML, TOML and XML with zero runtime dependencies.
      • dzr - Cross-platform Deezer.com audio player.
      • fx - Command-line JSON processing tool by anononymus JavaScript functions
      • gifgen - Simple high quality GIF encoding
      • image-scraper - A cool command line image scraper with a lot of features.
      • imgp - Blazing fast batch image resizer and rotator
      • jc - Convert command output, file-types, and common strings to JSON or YAML for easier use in scripts.
      • xmlstarlet - Old but powerful tool for command-line XML formatting, filtering, and manipulation.
      • adb-export - Export Android content providers to CSV format
      • Android-Kitchen - A text-based kitchen for Android ROM customization. Uses shell scripts and works with Cygwin/OS X/Linux
      • jo - A small utility to create JSON objects from command-line arguments.
      • jq - Sed for json data. You can use it to slice and filter and map and transform structured data
      • korkut - Quick and simple image processing at the command line.
      • 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.
      • nehm - Console tool, which downloads, sets IDv3 tags and adds to your iTunes (if you use it) your SoundCloud likes in convenient way
      • PiCAST - PiCAST turns your $35 Raspberry Pi in to a Chromecast like Device
      • visidata - A terminal spreadsheet multitool for exploring and arranging data (csv/json/xml/xls/yaml/etc)
      • yq - yq is a portable command-line YAML processor
  • Applications

      • pockyt - Read, Manage, and Automate your [Pocket](https://getpocket.com) collection.
      • pushblast - Get PushBullet notifications when a shell program exits
      • whereami - Get your geolocation information from the CLI
      • ansiweather - Weather in your terminal, with ANSI colors and Unicode symbols
      • awless - A powerful, innovative and small surface CLI to manage AWS.
      • bashblog - A Bash script that handles blog posting
      • carbon-now-cli - 🎨 Beautiful images of your code — from right inside your terminal.
      • choosealicense-cli - Choose an OSS license from the comfort of your terminal
      • cointop - The fastest and most interactive terminal based UI application for tracking cryptocurrencies
      • dstask - Single binary terminal-based TODO manager with git-based sync + markdown notes per task
      • editly - Command line video editor
      • facebook-cli - Facebook command line tool
      • gcalcli - Google Calendar command line interface
      • geeknote - Command line evernote client
      • haxor-news - Browse Hacker News like a haxor
      • hn-cli - Browse Hacker News from the comfort of your Terminal
      • iponmap - Draw point on world map using ip address
      • isitup - Check whether a website is up or down
      • jrnl - A simple command line journal application that stores your journal in a plain text file
      • kanban.bash - commandline asciii kanban board for minimalist productivity bash hackers (csv-based)
      • ledger - Command line accounting
      • licen - Generate your license. Yet another lice, but implement with Jinja2 and docopt
      • md2png - Convert markdown to PNG image
      • moviemon - Everything about your movies within the command line.
      • nomino - Batch rename utility using regex, sort and map file options.
      • pcalc - Calculator made for programmers working with multiple number representations, sizes, and overall close to the bits.
      • Reddit Terminal Viewer - Browse Reddit from your terminal
      • SAWS - A Supercharged AWS CLI
      • taskwarrior - A command-line TODO list manager
      • fanyi - Translate English to Chinese in terminal
      • pushbullet-bash - Bash interface to the PushBullet API
      • ranger - A console file manager with VI key bindings.
      • taskbook - Tasks, boards & notes for the command-line habitat
      • terjira - Command line power tool for Jira
      • ticker
      • vl - URL link checker on text documents
      • wego - Weather app for the terminal
      • whales - A tool to automatically dockerize your applications
      • wttr.in - :partly_sunny: The right way to check the weather (curl wttr.in)
  • Shell Package Management

      • vcsh - Config manager based on Git
      • bpkg - JavaScript has npm, Ruby has Gems, Python has pip and now Shell has bpkg
      • bash-it - A community Bash framework
      • basher - A package manager for shell scripts
      • bashing - Smashing Bash into Pieces
      • dotdrop - Save your dotfiles once, deploy them everywhere
      • dotfiler
      • fresh - Keep your dotfiles fresh
      • homeshick - Git dotfile synchronizer written in Bash
      • shallow-backup - Easily create lightweight documentation of installed packages, dotfiles, and more
      • shundle - Plugin manager for shell scripts
      • yadm - Git-based dotfiles manager supporting encryption, alternates, and bootstrapping
  • Shell Script Development

  • Shells

    • ksh93 - Korn Shell
    • murex - A smarter shell and scripting environment with advanced features designed for usability, safety and productivity (eg smarter DevOps tooling)
    • ngs - Fully featured scripting language created specifically for Ops. REPL is being developed.
    • nushell - A modern shell written in Rust
    • oksh - Portable OpenBSD ksh
    • shell++ - Friendly and modern functional and object oriented shell script language
    • shenv - Simple shell version management
    • tcsh - C shell with file name completion and command line editing
    • yash - A POSIX-compliant command line shell with built-in support for completion and prediction based on command history
    • pdksh - Public domain Korn shell
    • bash - GNU Project's shell (Bourne Again SHell)
    • elvish - Friendly, expressive shell features like anonymous functions and data structures
    • osh - Bash compatible, with new/modern Unix shell language called Oil
    • powershell - platform task automation and configuration management framework, consisting of a command-line shell and scripting language
    • yash - A POSIX-compliant command line shell with built-in support for completion and prediction based on command history
    • powershell - platform task automation and configuration management framework, consisting of a command-line shell and scripting language
    • es - The extensible shell, based on Plan 9's [rc](https://github.com/rakitzis/rc) shell
    • ion - A modern system shell that features a simple, yet powerful, syntax. It is written entirely in Rust.
    • mksh - MirBSD Korn Shell
  • Games

      • bash2048 - Bash implementation of 2048 game
      • minesweeper - Bash implementation of minesweeper
      • nudoku - ncurses based sudoku game written in C
      • piu-piu - Horizontal scroller game in bash with multiplayer mode!
      • sedtris - Tetris in sed
      • sed-scripts - Arkanoid and Sokoban written using sed
      • SHTAP - Reusable text adventure engine for Bash 4
      • tty-solitaire - Play solitaire in your terminal!