Awesome Shell
Shellを扱う資料や関連プロジェクトをまとめたAwesomeリストです。
シェル
基本となるシェルを選びます。
- bash - GNU Project のシェル(Bourne Again SHell)。
- elvish - 無名関数やデータ構造など、親しみやすく表現力豊かな機能を備えたシェル。
- es - Plan 9 の rc シェルに基づく拡張可能なシェル。
- fish - スマートで使いやすいコマンドラインシェル。
- ion - シンプルながら強力な構文を特徴とするモダンなシステムシェル。すべて Rust で書かれています。
- ksh93 - Korn Shell
- mksh - MirBSD Korn Shell
- murex - 使いやすさ、安全性、生産性を考慮した高度な機能(よりスマートな DevOps ツールなど)を備える、より賢いシェル・スクリプト環境。
- ngs - Ops 向けに特化して作られたフル機能のスクリプト言語。REPL は開発中です。
- nushell - Rust で書かれたモダンなシェル。
- oksh - ポータブルな OpenBSD ksh。
- osh - Oil と呼ばれる新しいモダンな Unix シェル言語を備えた Bash 互換シェル。
- pdksh - パブリックドメインの Korn シェル。
- powershell - コマンドラインシェルとスクリプト言語で構成される、クロスプラットフォームのタスク自動化・構成管理フレームワーク。
- shell++ - 親しみやすくモダンな関数型・オブジェクト指向シェルスクリプト言語。
- shenv - シンプルなシェルバージョン管理。
- tcsh - ファイル名補完とコマンドライン編集を備えた C シェル。
- xonsh - Python 風で BASH を意識したシェル言語・コマンドプロンプト。
- yash - コマンド履歴に基づく補完・予測を組み込みでサポートする POSIX 準拠コマンドラインシェル。
- zsh - スクリプト言語を備えた強力なシェル。
コマンドラインの生産性
検索、ブックマーク、マルチプレクシングなど、ターミナル利用の生産性を高めるツール。
- AdvancedNewFile - Vim プラグインに着想を得た、ファイル・ディレクトリの再帰的な高速作成。
- ag - ディレクトリ階層を通じた超高速文字列検索。
- aliases - bash 向けの、文脈に応じて動的に整理されるエイリアス。
- arttime - テキストアートの美しさと、時計・タイマー・pomodoro++ 時間管理機能を融合。
- autoenv - ディレクトリベースの環境。
- await - コマンド一覧を並列実行し、終了を待機する単一バイナリー。
- bartib - コマンドライン用のシンプルなタイムトラッカー。追跡した活動をプレーンテキストで保存し、柔軟なレポートを作成できます。
- bashhub - :cloud: クラウド上の Bash 履歴。インデックス化・検索可能です。
- boilr - ボイラープレートテンプレートからプロジェクトを作る非常に高速な CLI ツール。
- boom - コマンドラインでリンクとスニペットを保存。
- borg - bash コマンド向けのターミナルベース検索エンジン。
- broot - より良いディレクトリ移動手段。
- browsh - モダンなテキストベースブラウザー。
- Buku - 強力なコマンドラインブックマークマネージャー。
- byobu - テキストベースのウィンドウマネージャー・ターミナルマルチプレクサー。
- cod —
--helpコマンドを実行したときに学習するシェル用補完デーモン。 - CloudClip - クラウド上の自分用クリップボード。異なるシステム間で gist を用いてテキストをコピー&ペーストします。
- ddgr - ターミナルから DuckDuckGo を利用。
- desk - シェル向けの軽量ワークスペースマネージャー。
- direnv - シェル用の環境切替ツール。autoenv と比較してください。
- dnote - マルチデバイス同期とウェブインターフェースを備えたシンプルなコマンドラインノートブック。
- eureka - :bulb: ターミナルを離れずにアイデアを入力・保存する CLI ツール。
- fasd - ファイル・ディレクトリへ迅速にアクセスできるコマンドライン生産性向上ツール。
- fd - シンプルで高速かつ使いやすい find の代替。
- foxy - Firefox と surf ブラウザー向けのプレーンテキストブックマーク。
- fselect - SQL 風クエリでファイルを検索。
- funky - シェル関数の機能を拡張し、より強力・柔軟にします。
- fz - z 向けのシームレスなあいまいタブ補完。
- fzf - コマンドラインのあいまい検索ツール。
- gitmux - Tmux のステータスバーに Git 状態を表示。
- googler - ターミナルから Google Search、Google Site Search、Google News を利用。
- googlr - ターミナルから Google 検索できるコマンドラインツール。
- has -
hasは、パス上の各種コマンドラインツールとそのバージョンの存在確認を支援します。 - how2 -
how2は Unix シェルで何かを行う最も簡単な方法を見つけます。manに似ていますが、自然言語で問い合わせられます。 - navi - コマンドライン用の対話的チートシートツール。
- hhighlighter - コマンド出力内の単語を色付け。
- hr - ターミナル用の
<hr />。 - hss - 自動補完・非同期実行を特徴とする対話的並列 SSH クライアント。
- hstr - Bash 履歴候補ボックス。
- k - Git 状態、ファイル重みの色、期限情報を追加してディレクトリ一覧を読みやすくする Zsh スクリプト。
- k alias - シンプルなワンライナーで kool alias などを使えるようにします。
- lf - ranger に着想を得た Go 製ターミナルファイルマネージャー。
- lf.sh - 少ない入力でファイルをすばやく検索し、grep・パスのクリップボードコピーなど多くの操作を実行。
- lowcharts - ターミナルで低解像度グラフを描画。
- Lmod - Tcl ベースモジュールとの後方互換性を維持しつつ拡張する、Lua ベースの Environment Modules(modules と比較)。
- loop - 複雑なループをワンライナーで記述・制御。
- marker - シェルコマンドをブックマーク。
- mackup - アプリケーション設定を同期(OS X/Linux)。
- mcfly - シェル履歴を自在に移動。Great Scot!
- modules - シェル環境を管理する古典的な Tcl ベースの Environment Modules(Lmod、direnv、autoenv と比較)。
- nnn - 優れたデスクトップ統合を備えたファイルブラウザー・ディスク使用量分析ツール。
- ok-sh - 複数プロジェクトで、それぞれ固有のコマンドを使っていますか。.ok ファイルが必要です。
- parallel - 標準入力からシェルコマンドラインを構築し、並列実行。
- pass - GPG 暗号化と任意の git 統合により、コマンドラインからパスワードを管理。
- pathpicker - grep、search、git などの入力を受け取り、結果からファイルを選択して開く・コマンド引数に渡すことができます。
- pdd - タイマーを備えた小さな日付・時差計算機。
- percol - UNIX シェルの従来のパイプ概念に対話的フィルタリングの味わいを加えます。
- q - Bash・Zsh シェル向けの Vim 風マクロレジスター。
- qfc - Bash・Zsh 向けファイル補完ウィジェット。
- resh - Zsh・Bash 向けの文脈依存シェル履歴。
- rg - The Silver Searcher の使いやすさと GNU grep の生の速度を組み合わせた、行指向検索ツール。
- screen - GNU ターミナルマルチプレクサー。
- shell-history - Highcharts でシェル使用状況を可視化。
- SHML - ターミナル用スタイルフレームワーク(Shell Markup Language)。
- slugify - ファイル名・ディレクトリをウェブフレンドリーな形式に変換するコマンド。
- sman - :bug: コマンドラインスニペットマネージャー。
- spark - シェル内の ▁▂▃▅▂▇。
- spark.fish - ▁▂▃▅ スパークライン生成器。
- sheet - コマンドライン用テキストスニペット。
- spot - 小さなファイル検索ユーティリティ。
- snips - コードスニペットを管理するコマンドラインツール。
- sqlline - JDBC 経由でリレーショナルデータベースへ SQL を発行するシェル(複数行、補完、強調表示、方言サポート)。
- sshfs - SSH 経由でリモートファイルシステムをマウントするツール。
- sudocabulary - ターミナルで英語語彙を学習。
- surfraw - ブラウザーを使わず、ターミナルから特定サイトの閲覧・ウェブ検索を行います。
- task-manager - 二、三回のキーストロークですべてのスクリプトを実行。
- td-cli - 複数プロジェクトにまたがる TODO を整理・管理するコマンドラインマネージャー。
- tere - cd + ls より高速な代替。
- thefuck - 覚えやすいコマンドでよくあるシェルの誤りを修正。
- tldr - 簡素化されコミュニティ主導の man ページである tldr 向けのフル機能 Bash クライアント。
- tmux - 優れたターミナルマルチプレクサー。
- undollar - ターミナルに貼り付けたコマンド先頭のドル記号を取り除きます。
- usql - SQL データベース向けユニバーサルコマンドラインインターフェース。
- v - vim 向けの z。
- wemux - 簡単なマルチユーザー Tmux。
- xiki - シェルコンソールをより親しみやすく強力にします。
- xplr - ハック可能で最小限かつ高速な TUI ファイルエクスプローラー。
- xsv - Rust 製の高速 CSV コマンドラインツールキット。
- xxh - SSH を通じ、どこへでもお気に入りのシェルを持ち運びます。
ディレクトリ移動
- aliasme - すばやくディレクトリ移動するための alias ヘルパー。
- autojump - 学習する cd コマンド。コマンドラインから容易にディレクトリを移動できます。
- bashmarks - シェル向けディレクトリブックマーク。
- bd - 親ディレクトリへすばやく戻ります。
- commacd - Bash 内をより速く移動する方法。
- enhancd - :rocket: 対話的フィルターを備えた次世代 cd コマンド。
- goto - 自動補完をサポートし、エイリアス化されたディレクトリを移動するシェルユーティリティ。
- jump - 利用習慣を学習してファイルシステムをより速く移動できるようにします。
- lazy-cd - bash 補完を備えた、ファイルシステムをブックマーク移動するためのシンプルな bash コマンド。
- up - bash、zsh、fish 向け。名前または階層数でディレクトリを上がります。
- z - z は新しい j、yo。
- z.lua - 利用習慣を学習してより速く移動できる新しい cd コマンド。
- zoxide - Rust 製のより高速なファイルシステム移動手段。
- zpyi - Zsh 内の Python。シェルで簡単に Python スクリプトを記述。
カスタマイズ
カスタムプロンプト、カラーテーマなど。
- aphrodite-terminal-theme — bash、fish、zsh で動作する、洗練された端末向けのミニマルな Aphrodite テーマ(プロンプト)。
- base16-builder - Base16-Builder。
- bash-full-of-colors - screen、tmux、git サポートなど多数の機能を備えた強力なプロンプト。
- bash-git-prompt - Git ユーザー向けの有益で華やかな Bash プロンプト。
- bash-powerline - 純粋な Bash スクリプトによる Powerline スタイル Bash プロンプト。
- bashstrap - OSX ターミナルをすばやく飾る方法。
- bullet-train-oh-my-zsh-theme - :bullettrain_side: Powerline Vim プラグインに基づく oh-my-zsh シェルテーマ。
- emojify - コマンドラインで絵文字を使用 :scream:。
- flatui-terminal-theme - ターミナル向けのより美しい色。
- geometry - 任意の関数を左プロンプトまたは(非同期の)右プロンプトへ即座に追加できるミニマルな ZSH テーマ。
- git-prompt - Git、SVN、HG モジュールを備えた Bash プロンプト。
- gittify - カラフルな Bash プロンプトとカスタマイズ済み Git エイリアス。
- Gogh - Color Scheme - Gnome Terminal 向けカラースキーム。
- liquidprompt - Bash・Zsh 向けのフル機能で注意深く設計された適応型プロンプト。
- mysql-colorize - mysql コマンドラインクライアントの色付け。
- oh-my-git - bash・zsh 向けの独自方針を持つ git プロンプト。
- oh-my-posh - Go で書かれた、あらゆるシェル・プラットフォーム向けプロンプトテーマエンジン。
- polyglot - bash、zsh、ksh、mksh、pdksh、oksh、dash、yash、busybox sh、osh で動作する情報豊富な Git プロンプト。
- powerlevel10k - 非常に柔軟な優れた Powerline ZSH テーマ。
- sexy-bash-prompt - 色、Git 状態、Git ブランチを備えた Bash プロンプト。
- starship - Rust で書かれた高速でカスタマイズ可能なクロスシェルプロンプト。
- synth-shell - カスタマイズ可能な状態レポートと華やかな bash プロンプトを備えたグリーター。
開発者向け
コマンドライン開発、バージョン管理、デプロイ。
- 1Password SSH Agent - 1Password と生体認証ロック解除を使い、Git・SSH ワークフローを認証。
- ack - ソースコード向けに最適化された grep 風検索ツール。
- add-gitignore - ニーズに基づきプロジェクト用 .gitignore を生成する対話型 CLI。
- bcal - ストレージ変換・計算用バイト計算機。
- bitwise - curses ベースのターミナル対話型ビット操作ツール。
- bocker - 100 行の bash で実装された Docker。
- cloc - コード行数をカウント。
- doclt - Digital Ocean 向けコマンドラインインターフェース。
- dokku - Docker によるミニ Heroku。これまでに見た中で最小の PaaS 実装。
- forgit - あいまい検索ツール fzf を活用する
gitユーティリティツール。 - git-extra-commands - Churn、cut-branch、improved-merge など多数の Git 追加ユーティリティ。
- git-extras - リポジトリ概要、repl、変更履歴の生成、作者ごとのコミット割合などの Git ユーティリティ。
- git-open -
git openと入力すると、ブラウザーでリポジトリの GitHub ページまたはウェブサイトを開きます。 - git-quick-stats - git リポジトリ内のさまざまな統計へ簡単かつ効率的にアクセスする手段。
- git-semver - セマンティックバージョニングと変更履歴検証を容易にする Git プラグイン。
- git-sh - Git 作業に適したカスタマイズ済み Bash 環境。
- gita - 複数 git リポジトリを管理するコマンドラインツール。
- hub - hub は git での成功を助けます。
- just - プロジェクト固有のコマンドを保存・実行するタスクランナー。
- licins - コメント化されたソフトウェアライセンスをソースコードへ挿入。
- mkdkr - Makefile + Docker = CI パイプライン。
- mr - 複数リポジトリ管理ツール。
- nve - 特定 Node.js バージョンで任意のコマンドを実行。
- overcommit - 完全に設定可能・拡張可能な Git フックマネージャー。
- pre-commit - マルチ言語 pre-commit フックを管理・維持するフレームワーク。
- rebound - コンパイラーエラー発生時、ターミナルで Stack Overflow の結果を即座に閲覧。
- repren - コマンドラインの検索・置換とファイル名変更の万能ツール。
- slap - Node.js 上で動作する Sublime 風ターミナルベーステキストエディター。
- shipit - ミニマルな SSH デプロイ。
- starring - GitHub で使用中の npm パッケージを自動的にスター付け。
- tag - ag の一致箇所へ即座にジャンプ。
- trunk - 非常に高速なメタコードチェッカー・フォーマッター。
- vmn - 言語・アーキテクチャに依存しない git ベースの自動バージョニング・状態復旧ソリューション。
- wipe-modules - 非アクティブプロジェクトの node_modules フォルダーを削除する小さなエージェント。
システムユーティリティ
システム管理、システムデバッグ、ファイル・プロセス管理を含む OS 関連ツール。
- atop - 全プロセスの活動を報告できる ASCII 全画面パフォーマンスモニター。
- bat - 翼の生えた
catクローン。 - bmon - 人に分かりやすい視覚出力を備えたリアルタイムネットワーク帯域幅モニター・レート推定器。
- btop - Linux/OSX/FreeBSD リソースモニター。
- catcli - オフラインデータ向けコマンドラインカタログツール。
- ccat - 色付けする cat。cat と似た動作ですが、構文強調表示で内容を表示します。
- exa - モダン版
ls。 - progress -
cp、rm、ddなどの進行状況を表示する Linux ツール。 - stronghold - ターミナルから MacOS セキュリティ設定を容易に構成。
- glances - システムを見守る Glances。
- goaccess - *nix システムのターミナルで動作する、リアルタイムウェブログ分析器・対話型ビューアー。
- hblock - Hosts ファイルベースの広告ブロッカー。
- histstat - netstat 用の履歴。
- htop - より良い
topを目指す、ncurses ベース対話型プロセスビューアー。 - lnav - 小規模向けの高度なログファイルビューアー。
- logdissect - ログファイルなどのデータを分析する CLI ユーティリティ・Python API。
- ls++ - 極限まで強化された色付き ls。
- lsd - 色、アイコン、ツリービューなど多数の追加機能・書式設定オプションを備える GNU ls の再実装、LSDeluxe。
- lsp - 平易な言葉のファイル説明とインテリジェントなグループ化を備えた改良版
ls。 - maza - ローカル広告ブロッカー。Pi-hole のように、OS を使ってローカルで動作します。
- mtr - ‘traceroute’ と ‘ping’ の機能を一つにしたネットワーク診断ツール。
- ncdu - NCurses Disk Usage。
- nmtui - NetworkManager を制御するテキストユーザーインターフェース。
- powertop - チューニングオプションを備えた、バッテリー・電力使用量とデバイス統計を監視するコマンドラインツール。
- prettyping -
ping出力をより美しく、カラフルに、コンパクトで読みやすくします。 - procdog - サーバーなど長時間稼働するプロセスを軽量にコマンドライン制御。
- quick-secure - UNIX/Linux システムをすばやく保護・堅牢化。
- rng - ファイルまたは標準入力から指定範囲の行を標準出力へコピー。
- tiptop - グラフィカルなコマンドラインシステムモニター。
- wifi-wand - MacOS で WiFi を管理する Ruby コマンドラインアプリケーション(
gem install wifi-wandでインストール)。 - xiringuito - SSH ベースの「貧者の VPN」。
ダウンロードと配信
シェルスクリプトで書かれた、セルフホスト可能な軽量サーバー・ネットワークツール。
- aria2 - HTTP/HTTPS、FTP、BitTorrent、Metalink をサポートする、コマンドラインで操作する軽量マルチプロトコル・マルチソースのクロスプラットフォームダウンロードユーティリティ。
- balls - Bash on Balls。
- bashttpd - Bash で書かれたウェブサーバー。
- bashhub-server - プライベートクラウドシェル履歴。bashhub 向けオープンソースサーバー。
- bitpocket - 「DIY Dropbox」、または「適切な削除機能を持つ双方向ディレクトリ (r)sync」。
- Dropbox-Uploader - Dropbox からファイルのアップロード、ダウンロード、一覧表示、削除に使える Bash スクリプト。
- httpie - ユーザーフレンドリーな cURL 代替であるコマンドライン HTTP クライアント、HTTPie。
- HTTPLab - HTTP リクエストを検査し、レスポンスを作成できる対話型ウェブサーバー。
- Kapow! - スクリプト化できるなら、HTTP 化できます。
- ngincat - netcat を使用する小さな Bash HTTP サーバー。
- resty - パイプラインで使用できる小さなコマンドライン REST クライアント。
- shell2http - シェルコマンドを実行する HTTP サーバー。開発、プロトタイピング、リモート制御向けに設計されています。
- tshare - コマンドラインからのファイル共有。
- vesper - 🍸Vesper は Bash/Unix Shell 向け HTTP フレームワーク。
- xh - HTTP リクエスト送信のための親しみやすく高速なツール。
- yt-dlp - YouTube.com などの動画サイトから動画をダウンロードするコマンドラインプログラム。
マルチメディアとファイル形式
動画・音声ファイルを扱うツール。
- adb-export - Android コンテンツプロバイダーを CSV 形式へエクスポート。
- Android-Kitchen - Android ROM カスタマイズ用のテキストベースキッチン。シェルスクリプトを使用し、Cygwin/OS X/Linux で動作。
- Beets - 音楽ライブラリマネージャー・MusicBrainz タガー。
- cmus - クロスプラットフォーム CLI 音声プレーヤー。
- dasel - コマンドラインからセレクターでデータ構造をクエリ・更新。jq / yq と比較できますが、実行時依存なしに JSON、YAML、TOML、XML をサポートします。
- dzr - クロスプラットフォーム Deezer.com 音声プレーヤー。
- fx - 無名 JavaScript 関数によるコマンドライン JSON 処理ツール。
- gifgen - シンプルで高品質な GIF エンコード。
- image-scraper - 多くの機能を持つ優れたコマンドライン画像スクレイパー。
- imgp - 非常に高速なバッチ画像リサイザー・回転ツール。
- jc - コマンド出力、ファイル形式、一般的文字列を JSON・YAML へ変換し、スクリプトで使いやすくします。
- jo - コマンドライン引数から JSON オブジェクトを作る小さなユーティリティ。
- jq - JSON データ向け Sed。構造化データをスライス、フィルタリング、マップ、変換できます。
- korkut - コマンドラインでの高速かつシンプルな画像処理。
- library - 音楽、動画、画像、オンラインメディアのフォルダー用 SQLite データベースを作成。多くの並べ替えオプションを持つ CLI 専用インターフェースで、Plex のようにメディアを再生・追跡します。
- mpv - シェルおよび GUI で、ほとんどの音声・動画形式を(ASCII 文字を使って)再生できます。
- nehm - SoundCloud のお気に入りをダウンロードし、IDv3 タグを設定して、iTunes(使用している場合)へ便利に追加するコンソールツール。
- PiCAST - 35 ドルの Raspberry Pi を Chromecast のようなデバイスへ変える PiCAST。
- sejda - PDF 文書をコマンドラインで操作(分割、結合、回転、jpg への変換、テキスト抽出など)。
- visidata - データの探索・整理を行うターミナルスプレッドシートマルチツール(csv/json/xml/xls/yaml など)。
- xidel - (チューリング完全な)XPath・XQuery で HTML/XML/JSON データをフィルタリング、マップ、作成する CLI ツール。
- xmlstarlet - 古いながら強力な、コマンドライン XML 書式設定・フィルタリング・操作ツール。
- yq - ポータブルなコマンドライン YAML プロセッサー。
アプリケーション
コマンドラインベースのアプリケーション、または既存サービスへのコマンドラインアクセス。
- ansiweather - ANSI カラー・Unicode 記号によるターミナル内の天気。
- awless - AWS を管理する強力で革新的、かつ小さな操作面積の CLI。
- bashblog - ブログ投稿を処理する Bash スクリプト。
- carbon-now-cli - 🎨 ターミナル内からコードの美しい画像を作成。
- choosealicense-cli - 快適なターミナルから OSS ライセンスを選択。
- cointop - 暗号通貨を追跡する最速かつ最も対話的なターミナルベース UI アプリケーション。
- dstask - git ベース同期とタスク単位の Markdown ノートを備えた単一バイナリーのターミナルベース TODO マネージャー。
- editly - コマンドライン動画エディター。
- facebook-cli - Facebook コマンドラインツール。
- fanyi - ターミナルで英語を中国語へ翻訳。
- gcalcli - Google Calendar コマンドラインインターフェース。
- geeknote - コマンドライン Evernote クライアント。
- haxor-news - haxor のように Hacker News を閲覧。
- hn-cli - 快適なターミナルから Hacker News を閲覧。
- iponmap - IP アドレスで世界地図上に点を描画。
- isitup - ウェブサイトが稼働中か停止中かを確認。
- jrnl - 日記をプレーンテキストファイルに保存するシンプルなコマンドライン日記アプリケーション。
- kanban.bash - ミニマルな生産性を志向する bash ハッカー向けコマンドライン ASCII カンバンボード(CSV ベース)。
- ledger - コマンドライン会計。
- licen - ライセンスを生成。もう一つの lice ですが、Jinja2・docopt で実装されています。
- md2png - Markdown を PNG 画像へ変換。
- moviemon - コマンドライン内で映画に関するあらゆる情報を扱います。
- nomino - 正規表現、並べ替え、ファイルオプションのマッピングを使う一括リネームユーティリティ。
- pcalc - 複数の数値表現・サイズを扱い、ビットに近い作業をするプログラマー向け計算機。
- pockyt - Pocket コレクションを閲覧、管理、自動化。
- pushblast - シェルプログラム終了時に PushBullet 通知を受信。
- pushbullet-bash - PushBullet API 用 Bash インターフェース。
- ranger - VI キーバインドを備えたコンソールファイルマネージャー。
- Reddit Terminal Viewer - ターミナルから Reddit を閲覧。
- SAWS - 強化版 AWS CLI。
- taskbook - コマンドライン環境向けのタスク、ボード、ノート。
- taskwarrior - コマンドライン TODO リストマネージャー。
- terjira - Jira 向けコマンドラインパワーツール。
- ticker — ライブ更新・ポジション追跡を備えたターミナル株価ティッカー。
- vl - テキスト文書の URL リンクチェッカー。
- wego - ターミナル向け天気アプリ。
- whales - アプリケーションを自動的に Docker 化するツール。
- whereami - CLI から位置情報を取得。
- wttr.in - :partly_sunny: 天気を確認する正しい方法(curl wttr.in)。
ゲーム
仕事ばかりで遊ばないのは、一日を過ごす粗末な方法です。
- bash2048 - Bash による 2048 ゲーム実装。
- minesweeper - Bash によるマインスイーパー実装。
- nudoku - C で書かれた ncurses ベースの数独ゲーム。
- piu-piu - マルチプレイヤーモードを備えた bash の横スクロールゲーム。
- sedtris - sed によるテトリス。
- sed-scripts - sed で書かれたアルカノイドと倉庫番。
- SHTAP - Bash 4 向け再利用可能なテキストアドベンチャーエンジン。
- tty-solitaire - ターミナルでソリティアをプレイ。
シェルパッケージ管理
複数のシェル設定を管理するツール。zsh 固有のツールは Zsh セクションを参照してください。
- bash-it - コミュニティによる Bash フレームワーク。
- basher - シェルスクリプト用パッケージマネージャー。
- bashing - Bash を断片へ砕く。
- bpkg - JavaScript には npm、Ruby には Gems、Python には pip、そして Shell には bpkg。
- dotdrop - dotfiles を一度保存し、どこへでもデプロイ。
- dotfiler – Python で書かれた、シェル非依存の git ベース dotfiles パッケージマネージャー。
- fresh - dotfiles を新鮮に維持。
- homeshick - Bash で書かれた Git dotfile 同期ツール。
- shallow-backup - インストール済みパッケージ、dotfiles などの軽量ドキュメントを簡単に作成。
- shundle - シェルスクリプト用プラグインマネージャー。
- vcsh - Git ベースの設定マネージャー。
- yadm - 暗号化、代替設定、ブートストラップをサポートする Git ベース dotfiles マネージャー。
シェルスクリプト開発
Bash などのシェルスクリプトを記述、改善、整理するツール。
- ansi - 純粋な bash による ANSI エスケープコード。文字色やカーソル位置などを変更。
- assert.sh - Bash 単体テストフレームワーク。
- bashew - 小さな単体スクリプトから CI/CD・テストを伴う複雑なプロジェクトまで対応する bash スクリプト作成器。
- bashful - Bash スクリプト記述を簡素化するライブラリコレクション。
- Bashlets - Bash 向けモジュール式・拡張可能なツールボックス。
- bashly - Bash コマンドラインフレームワーク・CLI ジェネレーター。
- bashmanager - コマンドラインツールを作るミニ bash フレームワーク。
- bashwithnails - テスト、依存関係管理、パッケージングを伴い、楽しみのために書かれた Bash フレームワーク。
- bash-language-server - LSP ベース Bash 言語サーバー。
- bash-modules - unofficial strict mode を有効にして開発するための関数群。
- bats - Bash Automated Testing System。
- composure - シェル関数を合成、文書化、バージョン管理、整理。
- crash - ZSH 向けの適切なエラー処理、例外、try/catch。
- critic.sh - カバレッジレポート付きの非常にシンプルな Bash テストフレームワーク。
- dispatch - 50 行のポータブルシェルスクリプトによるコマンドライン引数パーサー。
- esh - 約 290 行の POSIX シェル・awk で実装された、シェルベースのシンプルなテンプレートエンジン。
- Fishtape - fish 向け TAP プロデューサー・テストハーネス。
- getoptions - シェルスクリプト(sh、bash、すべての POSIX シェル)向けの洗練されたオプションパーサー。
- getopts.fish - fish 向け CLI パーサー。
- is.sh - 組み込み test コマンドの代替。if 文をきれいにします。
- lumberjack - シェルスクリプト用ログインターフェース。
- mo - 純粋な bash による Mustache テンプレート。
- optparse - 単純なコマンドライン引数向け getopts の BASH ラッパー。
- rerun - 常用スクリプトを整理するモジュール式シェル自動化フレームワーク。
- revolver - シェルスクリプト向け再利用可能な進捗スピナー。
- phases - 実行するスクリプトの節を選択する、最小限の侵襲を持つ bash プリプロセッサー。
- powscript - bash で書かれた bash トランスパイラー(bash 用 CoffeeScript)。
- semver_bash - Bash によるセマンティックバージョニング。
- sh-semver - 指定規則に合うバージョンを見つける bash 向け Semver ツール。
- shellcheck - シェルスクリプト向け静的解析ツール。
- shellfire - 名前空間化・合成可能なシェル(bash、sh、dash)関数ライブラリのリポジトリ。
- shellspec - dash、bash、ksh、zsh、すべての POSIX シェル向けフル機能 BDD 単体テストフレームワーク。
- shfmt - bash をサポートし shfmt を含むシェルパーサー、フォーマッター、インタープリター。
- shpec - シェルテストフレームワーク。
- shutit - bash・pexpect ベースの自動化フレームワーク。
- sub - プログラムを整理する素敵な方法。
- ts - シェルテストスクリプト。
- urchin - シェルコマンドだけを使う、慣用的なシェルテストフレームワーク。
- shunit2 - JUnit/PyUnit 風の Bash スクリプト単体テストフレームワーク。
- rebash - スクリプトライブラリ・フレームワーク。インポート、例外、doc-test などを備えます。
- zunit - ZSH 向け強力な単体テストフレームワーク。
ガイド
- Bash Official Reference Manual
- Bash Hackers Wiki
- Greg Wooledge(別名「greycat」)の wiki。 特に Bash Guide、Bash FAQ、Bash Pitfalls。
- 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
- 非公式 Bash Strict Mode を使う(デバッグが大好きでない限り)
- コマンドラインの技
- 危険なほどに十分なコマンドライン学習
- bash を学ぶためのガイド
- シェルフィールドガイド
その他の Awesome リスト
その他にも素晴らしいリストは awesome-awesome と awesome-awesomeness で見つかります。