最新のWeb開発のための強力なターミナルおよびコマンドライン(CLI)ツール
公開: 2022-03-10フロントエンドおよびフルスタック開発者を含む多くの最新のプログラマーは、コマンドラインを毎日使用しています。 Web開発に比較的慣れていない人でも、コマンドラインスキルを早期に習得し、ターミナルでの生産性を向上させるための実用的なツールやユーティリティを見つけています。
この投稿では、過去数年間に私が個人的に発見した多くのコマンドラインアプリの分類リストを紹介します。 それらのいくつかは比較的新しいものであり、他のものはしばらくの間存在しています。 ですから、このまとめの何かがあなたの興味を引き、ターミナルで作業するときに何かを成し遂げるのに役立つことを願っています。
以下のナビゲーションを使用して、カテゴリにジャンプできます。
- ターミナルアプリ
- ターミナルユーティリティと拡張機能
- コマンドラインスクリプトとフレームワーク
- ターミナルの生産性向上ツール
ターミナルアプリ
このセクションでは、システムのデフォルトのターミナルアプリを置き換えるために使用できるターミナル、マルチプレクサ、コンソールエミュレータ、モバイルターミナル、およびコマンドラインワークスペースについて説明します。
tmux
tmux
は、Unixライクなオペレーティングシステムで人気のあるターミナルマルチプレクサであり、単一の端末で複数のプログラムを簡単に切り替えることができ、セッションを(バックグラウンドで実行しながら)「デタッチ」したり、別の端末に「再接続」したりできます。ターミナル。
iTerm2
iTerm2
の後継であるiTerm2は、macOS上のターミナルに代わるものであり、分割ペイン、堅牢な検索、オートコンプリート、インスタントリプレイなどの機能に加えて、多数の構成オプションが含まれています。
モッシュ
Moshは、インタラクティブなSSHを使用するためのリモートターミナルアプリ(またはモバイルシェル)であり、弱いWiFi、セルラーネットワーク、またはその他の信頼性の低い接続を介してターミナルベースのタスクを実行する必要があるユーザー向けの便利な機能がいくつか含まれています。
ゼリジ
Zellijは、ターミナルマルチプレクサ(tmuxと同様)の基本機能を備えたターミナルワークスペースですが、ユーザーがそれを拡張し、ペイン/タブおよびプラグインを介してパーソナライズされた環境を作成できる機能を備えています。
ハイパー
Hyperは、Webテクノロジー(HTML / CSS / JS)で構築されたMac、Windows、またはLinux用のElectronベースのターミナルアプリです。 数十のテーマとプラグインが含まれており、速度と安定性に基づいて構築されています。
cmder
cmder
は、Windowsユーザー向けのこの領域に適切なオプションがないために構築された、Windows用のポータブルコンソールエミュレーターです。
a-シェル
a-Shellは、ファイル/ディレクトリコントロール、Apple Shortcutsとの互換性、複数のウィンドウなどを備えた「ポケットの中の端末」を提供するiOSアプリです。
永遠のターミナル
Eternal Terminalは、他の同様の人気のあるプロジェクトに触発されたもう1つのリモートターミナルアプリです。
テンハンド
Ten Handsは、Mac、Linux、およびWindows用のターミナルアプリであり、コマンドラインタスクを整理して実行するための最も簡単な方法として請求されており、複数のプロジェクトで同様の日常のタスクを実行する人に役立ちます。
eDEX-UI
eDEX-UIは、SF映画のUI、特にトロン:レガシー映画に大きく影響を受けた、フルスクリーンのクロスプラットフォーム端末エミュレーターおよびシステムモニターです。
タビー
Tabby(以前の「Terminus」)は、ローカルシェル、SSH、シリアル、およびTelnet接続用のカスタマイズ可能なクロスプラットフォームターミナルアプリであり、分割ペイン、スマートタブ、カスタマイズ可能なホットキーなどの機能のサポートが含まれています。
フィッシュシェル
Fish Shellは、Linux、macOS、およびWindows用のコマンドラインシェルのもう1つのオプションであり、自動提案、タブ補完、24ビットカラー、Webベースの構成、構文の強調表示などの実用的な機能が含まれています。
ターミナルユーティリティと拡張機能
プライマリワークスペースを取得したら、さまざまなツール、ユーティリティ、テーマなどを使用してワークスペースを拡張する必要があります。 このセクションには、ターミナルエクスペリエンスをより楽しくするための便利なツールがいくつか含まれています。
Oh My Zsh
Oh My Zshは、Z Shell(または人気のあるUnixシェルであるZsh)の構成を管理するためのオープンソースのコミュニティ主導のフレームワークです。 何千もの便利な関数、ヘルパー、300以上のプラグイン、140以上のテーマなどがバンドルされています。 macOSまたはLinuxで最適に動作しますが、CygwinやWSL2などを使用するWindowsでも使用できます。
図
Figは、既存のターミナルにVSCodeスタイルのオートコンプリートを追加し、Git、npm、Kubernetes、Docker、AWS、GoogleCloudなどの既存のCLIツールのサポートを含みます。
fzf
fzf
は、コマンドライン用の高速でポータブルなあいまい検索ツールであり、包括的な機能セットを使用してあいまい検索クエリを実行できます。
シェルの歴史
Shell History(無料ではありません)は、Bash、Zsh、またはFishと統合するmacOSアプリであり、iCloudを介して簡単にバックアップと同期を行い、シェル履歴を「ノートブック」に整理できます。
htop
htop
はインタラクティブなプロセスビューアであり、元々はLinuxのみですが、現在はクロスプラットフォームであり、実行中のプロセスを表示するときに追加機能を提供することでtop
コマンドを改善することを目的としています。
GitHub CLI
GitHub CLIは、見逃した方のために、GitHubの公式のクロスプラットフォームコマンドラインインターフェイスであり、プルリクエスト、問題、およびその他のGitHub関連のタスクを端末にもたらします。
Streamhut
Streamhutを使用すると、何もインストールせずに端末をリアルタイムで共有できます。 2つのコマンド(設定に応じて)のいずれかを実行するだけで、チームコラボレーション、インタビュー、または教育でのライブターミナルセッションに役立ちます。
icdiff
icdiff
は、ターミナルベースのファイル差分ツールであり、色をうまく利用して、より実用的で視覚的な方法で差分を表示します。
>\_TerminalSplash
TerminalSplash
は、その名前が示すように、Unsplashに似ていますが、ターミナルテーマ用です。 ユーザーが送信した200を超えるテーマから選択するか、独自のテーマを送信してください。
ターミナルライザー
Terminalizerは、カスタマイズ可能なクロスプラットフォームのターミナルレコーダーであり、ターミナルセッションを記録し、アニメーションGIFとして、またはWebプレーヤーを介して共有できます。
Asciinema
Asciinemaは、端末の記録と共有のためのもう1つの一般的なオプションですが、Windowsでは使用できません。 これのすばらしい点は、記録された出力がビデオではなく、ターミナルセッションのプレーンテキストアニメーションであるということです。つまり、記録からアイテムを選択してコピー/貼り付けできます。
gtop
gtop
は、端末にシステム監視ダッシュボードを提供するtop
コマンドのもう1つの拡張機能です。 Node.jsが必要であり、Windowsでの部分的なサポートが含まれています。
DevDash
DevDash
は、開発者と作成者向けの高度に構成可能なターミナルダッシュボードです。 Google Analytics、GitHub、Feedly、シェルコマンド出力などのソースからの情報を表示するようにカスタマイズできます。
佳作:
-
ora
エレガントなターミナルスピナー。 -
tiny-care-terminal
ターミナルを使用しているときにあなたの世話をしようとする小さなダッシュボード。 -
theme.sh
270以上のプリロードされたテーマを含むターミナルテーマを設定できるシェルスクリプト。
コマンドラインスクリプトとフレームワーク
いくつかの多数のライブラリとフレームワークを使用すると、独自のコマンドラインアプリとユーティリティを構築および保守できます。 以下に、Bash、JavaScriptなどのいくつかを示します。
コマンドアンドコンカー(cac)
Command And Conquerは、cacとも呼ばれ、コマンドラインアプリを構築するための軽量のJavaScriptフレームワークです。 たとえば、Node.jsベースのスキャフォールディングツールをいくつか構築するために使用されています。
zx
zx
は、GoogleのエンジニアによるBashの人気のある代替手段であり、JavaScriptを使用してコマンドラインアプリを記述し、実行可能ファイルを呼び出して出力を取得したり、エラーを処理したりできる使いやすいAPIを使用できます。
present
present
は、色と効果を含み、事前に記録された再生可能なコードブロックをスライドとして再生できるようにする端末用のMarkdownベースのプレゼンテーションツールです。
バッハ
Bachは、 rm -rf /
などの危険なコマンドを含むスクリプトをテストするために使用できるBashテストフレームワークであり、コマンドをモックするためのAPI(@ mock、 @ignore
、 @mockallto
@mock
)も含まれています。
CLUI
CLUI
は、コンテキスト対応オートコンプリートを備えたコマンドラインインターフェイスをアプリ(つまり、ユーザーが操作する端末のようなアプリケーション)に組み込むことができるユーティリティを備えたJavaScriptAPIです。
ShellCheck
ShellCheck
は、シェルスクリプトのバグを見つけるのに役立つシェル拡張機能です。
佳作
Basho
プレーンなJavaScriptを使用して複雑なシェルタスクを記述でき、シェルコマンドやスクリプトとうまく組み合わせることができます。-
import
Bashおよびその他のUnixシェル用の高速で使いやすいモジュールシステム。 -
Bash Infinity
Bashを使用してツールを作成するためのモジュール式で軽量のライブラリとボイラープレートフレームワーク。
ターミナルの生産性向上ツール
最後に、このカテゴリには、コマンドラインユーティリティとプログラムの小さなサンプルがまとめられており、データの整理、ファイルの共有など、生産性に関連するさまざまなタスクに役立ちます。
ダッシュダッシュ
Dash Dashは、Unixのマニュアルページ(つまり、マニュアルページ)をより口当たりの良い形式で表示するオンラインドキュメントサイトであり、端末にあまり詳しくない人がコマンドラインの使用法を学ぶのに役立ちます。
nb
nb
は、ローカルWebのメモ取り、ブックマーク、アーカイブ、暗号化などの機能を備えたコマンドラインツールです。 ストレージはプレーンテキストであり、Gitベースのバージョン管理、Wikiスタイルのリンク、カラーテーマなどが含まれます。
Rclone
Rclone
は、40以上のクラウドストレージサービス(Amazon S3、Dropbox、Googleドライブ、Azureなど)上のファイルを管理できるオープンソースのコマンドラインプログラムです。 これには、使い慣れたUnixコマンドやその他の機能に相当するクラウドが含まれています。
navi
navi
は、端末用のインタラクティブなチートシートツールです。 他の機能に加えて、チートシートリポジトリを参照したり、チートシートをインポートしたり、独自のリポジトリを追加したりできます。
タスクブック
Taskbookは、端末内のタスク、ボード、メモを整理できる高速なコマンドラインツールであり、検索/フィルター、カスタムの保存場所、シンプルでユーザーフレンドリーな構文などの機能を備えています。
プロジェクトエクスプローラー
プロジェクトエクスプローラーは、任意のプロジェクトのツリー視覚化を構築できるCLIツールです。 これは、新しいチームメンバーを呼び込むとき、または新しいプロジェクトを継承するときに役立ちます。
transfer.sh
transfer.sh
は、コマンドラインを介してファイルを共有するための高速で使いやすいアプリです。 Amazon S3、Googleドライブ、Storj、ローカルファイルシステムなどのサービスのサポートが含まれています。
佳作
ack
grepに似ていますが、ソースコードの大きなツリーを検索するプログラマー向けに最適化されたコード検索ツール。-
goto
エイリアスディレクトリに移動するためのオートコンプリートをサポートするシェルユーティリティ。 -
bashupload
コマンドラインからファイル(最大50GB)をアップロードして、サーバー、デスクトップ、モバイルデバイス間で簡単に共有できます。 -
copyfiles
端末内のファイルのコピーに追加機能を追加するコマンドラインユーティリティ。
お気に入りのコマンドラインツールは何ですか?
前述のように、これは完全なリストではなく、過去数年間に私が個人的に遭遇した関連するコマンドラインアプリとユーティリティの大きなコレクションにすぎません。
自分で何かを作成した場合、またはターミナルエクスペリエンスを強化するために定期的に使用するものがある場合は、コメントに自由にドロップしてください。