Read in English

Homebrew CLI ツール

MacOS ターミナルを快適にする Homebrew CLI アプリ解説

Introduction

MacOS セットアップスクリプトの記事では、MacOS のセットアップを完全に自動化するためのシェルスクリプト群を紹介し、その中で、Homebrew を使用してインストールする CLI ツールのリストを掲載しました。

ターミナル環境を開発者により快適な環境に変えるためには、標準搭載のコマンドだけでは不十分です。Rust や Go で書かれたモダンな代替ツールから、Git の拡張、Zsh のプラグインまで、私がセットアップスクリプトに組み込んでいる Homebrew CLI アプリ について、カテゴリ別に解説していきます。

1. Modern Terminal Utilities (Rust/Go Alternatives)

まずは、従来の UNIX コマンド(cat, find, df など)をモダンに置き換える、高速で高機能なツール群です。

  • bat: 公式が「翼の生えた cat」と呼ぶモダンな代替ツールです。シンタックスハイライト機能や Git の変更行の表示機能(左端に + や - が出る)を備えており、ターミナル上でコードを読む体験が劇的に向上します。
    brew install bat

    sharkdp/bat

    A cat(1) clone with wings.

    Preview
  • fd: find コマンドの代替ツールです。記述がシンプルで直感的な上、Rust 製のため動作が非常に高速です。デフォルトで .gitignore を尊重し、隠しファイルをスキップしてくれます。
    brew install fd

    sharkdp/fd

    A simple, fast and user-friendly alternative to 'find'

    Preview
  • fzf: コマンドライン用の「あいまい検索(Fuzzy Finder)」ツールです。履歴の検索(Ctrl + R)やファイルの検索など、ターミナル上のあらゆるリストをインタラクティブに絞り込むことができます。これなしのターミナル操作は考えられません。
    brew install fzf

    fzf

    Preview
  • duf: df コマンドのモダン版です。ディスクの空き容量や使用状況を、見やすいカラフルな表形式で表示してくれます。
    brew install duf

    muesli/duf

    Disk Usage/Free Utility - a better 'df' alternative

    Preview
  • scc (Sloc, Cloc and Code): 指定したディレクトリ内のソースコードの行数(空白、コメント、コード)を言語別に超高速でカウントしてくれるツールです。
    brew install scc

    boyter/scc

    Sloc, Cloc and Code: scc is a very fast accurate code counter with complexity calculations and COCOMO estimates written in pure Go

    Preview

2. Git & GitHub Enhancements

Git 周辺の操作を快適にし、ターミナルからブラウザを開く回数を減らすためのツール群です。

  • gh (GitHub CLI): ターミナルから直接プルリクエストを作成したり、Issueを確認したり、リポジトリを管理できる GitHub 公式の CLI ツールです。独自のエイリアス(gh repo-delete など)を設定するベースにもなります。
    brew install gh

    Manual

    Take GitHub to the command line

    Preview
  • git-delta: git diff や git show の出力を圧倒的に見やすくするページャーです。シンタックスハイライト付きで、GitHub のブラウザ画面のような美しい差分表示(Side-by-side 表示など)をターミナル上で実現します。
    brew install git-delta

    Introduction - delta

    Preview
  • git-filter-repo: Git のコミット履歴を高速かつ安全に書き換えるための公式推奨ツールです。過去に誤ってコミットしてしまった巨大なファイルや機密情報をリポジトリから完全に消し去る際などに使用します。
    brew install git-filter-repo

    newren/git-filter-repo

    Quickly rewrite git repository history (filter-branch replacement)

    Preview

3. Development Environments & Runtimes

プログラミング言語の実行環境や、開発に必須のコアツールです。

4. System & File Management

MacOS のシステム設定や、ファイル操作を高度化するユーティリティです。

  • coreutils: MacOS 標準の BSD 系コマンド(ls, cp, rm など)ではなく、Linux で一般的な GNU 版のコマンド群をインストールします。Linux 環境とスクリプトの互換性を持たせたい場合に重宝します。
    brew install coreutils

    www.gnu.org

    Preview
  • duti: ファイルの拡張子に対する「デフォルトのアプリケーション」を CLI から設定するツールです。Mac の標準機能では、それぞれの拡張子について、ファイル情報から開くアプリを個別に変更する必要がありますが、duti を使用することで、すべてのスクリプトファイルを VS Code で開くように設定することが可能です。
    brew install duti

    moretension/duti

    A command-line tool to select default applications for document types and URL schemes on Mac OS X

    Preview
    #!/bin/bash
    # VS Code をデフォルトのエディタに設定する例
    
    EDITOR_ID="com.microsoft.VSCode"
    
    # Basic text types
    duti -s $EDITOR_ID public.plain-text all
    duti -s $EDITOR_ID public.text all
    duti -s $EDITOR_ID public.data all
    duti -s $EDITOR_ID public.source-code all
    
    # Common file extensions
    extensions=("txt" "md" "tex" "js" "jsx" "ts" "tsx" "py" "go" "rs" "c" "cpp" "h" "hpp" "css" "json" "yaml" "yml" "xml" "sh" "zsh" "bash")
    
    for ext in "${extensions[@]}"; do
        duti -s $EDITOR_ID $ext all
    done
    
    echo "Default editor associations updated!"
  • mas: Mac App Store の CLI ツールです。ブラウザや App Store アプリを開くことなく、ターミナルから mas install [App ID] を実行するだけで LINE や Kindle などの GUI アプリをインストールできます。
    brew install mas

    mas-cli/mas

    :package: Mac App Store command-line interface

    Preview
  • mole: Mac のシステムをクリーンアップ・最適化・監視するための強力な CLI ツール(tw93/Mole)です。CleanMyMac や AppCleaner のような GUI アプリが持つ機能を 1 つに統合したようなツールで、mo コマンドを使って不要なキャッシュの削除やアプリの完全なアンインストールをターミナルから一括で行えます。
    brew install mole

    tw93/Mole

    🐹 Keep your Mac and PC clean, light, and running like new. Fast open-source CLI, plus native Mac and Windows apps.

    Preview
  • rename: 正規表現を使って、複数のファイル名を一括で変更できる強力なツールです。大量の画像ファイルやログファイルの整理に役立ちます。
    brew install rename
  • tree: ディレクトリの階層構造をツリー状に表示する古典的ですが必須のコマンドです。ディレクトリ構成を Markdown やドキュメントに貼り付ける際によく使います。
    brew install tree

5. Zsh Plugins

MacOS のデフォルトシェルである zsh を、最強のプロンプトに進化させるプラグイン群です。 (※これらを有効化するには、.zshrc に設定を追記する必要があります)

  • zsh-autosuggestions: コマンドの入力中に、過去の履歴に基づいたサジェストを薄いグレーの文字で表示してくれます。右矢印キー(または Ctrl + F)で確定できるため、タイピング量が激減します。
    brew install zsh-autosuggestions
  • zsh-syntax-highlighting: ターミナルに入力しているコマンドが正しい(インストールされている)場合は緑色に、間違っている場合は赤色にハイライトしてくれます。実行前にタイポに気づける必須プラグインです。
    brew install zsh-syntax-highlighting
  • zsh-completions: Zsh の標準補完機能をさらに強化し、何千もの追加コマンド(Homebrewのツールなど)に対するタブ補完を提供します。
    brew install zsh-completions
  • zsh-git-prompt: ターミナルのプロンプトに、現在の Git ブランチ名や、未コミットの変更があるかどうかのステータスを表示してくれるツールです。
    brew install zsh-git-prompt
🛠️ Zsh Plugins with Homebrew

Homebrew 経由で Zsh プラグインをインストールした場合、お使いの環境(Intel Mac か Apple Silicon Mac か)によってインストール先のパスが変わります。 .zshrc に source コマンドを追記する際は、パスの指定に注意してください。

Apple Silicon (M1/M2/M3) の場合:

source /opt/homebrew/share/zsh-autosuggestions/zsh-autosuggestions.zsh

6. Miscellaneous & Fun

実用性だけでなく、ターミナルライフを少し豊かにするツールや、特定用途のユーティリティです。

Conclusion

ここで紹介した CLI ツールは、ターミナルでの作業効率を根本から底上げしてくれます。 最初からすべてを使いこなす必要はありません。気になったツールを一つずつ brew install して、自分のワークフローに合うか試してみてください。あなたのターミナル環境がより快適なものになることを願っています!

コメント