モダンCLIツール完全ガイド:bat・exa・ripgrep・fdで開発効率を10倍に

cat・ls・grep・findの代替となるモダンCLIツールbat・exa・ripgrep・fdを徹底解説。インストール方法、基本使い方、便利なオプションを紹介。開発効率を向上させる実用的な情報満載。

batexaripgrepfdCLI代替ツール2026/5/25

はじめに

コマンドラインツールは開発者にとって欠かせない存在ですが、標準のcatlsgrepfindには機能面で物足りなさを感じることも多いでしょう。そこで登場するのが、batexaripgrepfdといったモダンな代替ツールです。これらは高速で、人間が読みやすい出力を提供し、開発効率を大幅に向上させます。本記事では、それぞれのツールの特徴、インストール方法、基本的な使い方、そして実践的な活用例を詳しく解説します。

bat:catの高機能版

batの特徴

batはcatの代替ツールで、シンタックスハイライト、Gitの変更表示、行番号表示など、ファイル閲覧を快適にする機能を備えています。

インストール方法

  • macOS: brew install bat
  • Ubuntu/Debian: sudo apt install bat(パッケージ名はbatではなくbatcatの場合あり)
  • Windows: scoop install bat または choco install bat
  • 基本的な使い方

    <h1>ファイルを表示</h1>
    bat ファイル名
    

    <h1>複数ファイルを表示</h1> bat ファイル1 ファイル2

    <h1>標準入力から受け取る</h1> echo "Hello" | bat

    便利なオプション

  • -A または --show-all: 非表示文字を表示
  • -n: 行番号を表示(デフォルトでON)
  • -p または --plain: 装飾なしで表示(catと同じ)
  • -r 開始行:終了行: 指定行のみ表示
  • --language=lang: 言語を指定してシンタックスハイライト
  • 実践的な活用例

    <h1>JSONファイルを見やすく表示</h1>
    bat --language=json config.json
    

    <h1>特定の行だけ表示(例:10行目から20行目)</h1> bat -r 10:20 main.py

    <h1>パイプで他のコマンドと組み合わせる</h1> grep -r "TODO" src/ | bat

    exa:lsのモダンな代替

    exaの特徴

    exaはlsの代替で、カラー表示、アイコン表示、Git統合、ツリー表示など、視覚的に優れたファイル一覧を提供します。lsよりも高速で、多くの情報を一目で把握できます。

    インストール方法

  • macOS: brew install exa
  • Ubuntu/Debian: sudo apt install exa(バージョンが古い場合あり)
  • Windows: scoop install exa または choco install exa
  • 基本的な使い方

    <h1>ファイル一覧表示</h1>
    exa
    

    <h1>詳細表示(パーミッション、所有者、サイズ、日時)</h1> exa -l

    <h1>隠しファイルも表示</h1> exa -a

    便利なオプション

  • -T または --tree: ツリー構造で表示
  • -F または --classify: ファイルタイプに応じて記号を付加(/、*、@など)
  • -G または --grid: グリッド表示(デフォルト)
  • -R または --recurse: サブディレクトリも再帰表示
  • --git: Gitのステータスを表示(変更ファイルにマーク)
  • -s ソートキー: ソート(name, size, dateなど)
  • 実践的な活用例

    <h1>ツリー表示でディレクトリ構造を確認</h1>
    exa -T
    

    <h1>Git管理下のファイルを詳細表示</h1> exa -l --git

    <h1>サイズが大きい順にソート</h1> exa -l -s size

    ripgrep:高速なgrep

    ripgrepの特徴

    ripgrepはgrepの代替で、特に大規模なコードベースでの検索に優れています。デフォルトで.gitignoreを尊重し、バイナリファイルを無視するため、高速かつ正確です。

    インストール方法

  • macOS: brew install ripgrep
  • Ubuntu/Debian: sudo apt install ripgrep
  • Windows: scoop install ripgrep または choco install ripgrep
  • 基本的な使い方

    <h1>パターン検索</h1>
    rg パターン ディレクトリ
    

    <h1>カレントディレクトリを再帰検索</h1> rg パターン

    <h1>ファイル名のみ表示</h1> rg -l パターン

    便利なオプション

  • -i または --ignore-case: 大文字小文字を区別しない
  • -w または --word-regexp: 単語単位で検索
  • -c または --count: 一致行数のみ表示
  • -g グロブ: ファイル名のパターンでフィルタ
  • -t ファイルタイプ: ファイルタイプでフィルタ(例:-t py)
  • -u または --unrestricted: .gitignoreを無視
  • 実践的な活用例

    <h1>Pythonファイル内で関数定義を検索</h1>
    rg "^def " -t py
    

    <h1>コメント行を除外してTODOを検索</h1> rg "TODO" --glob '!*.md'

    <h1>特定のディレクトリを除外</h1> rg "FIXME" --glob '!node_modules'

    fd:ユーザーフレンドリーなfind

    fdの特徴

    fdはfindの代替で、直感的な構文と高速な検索が特徴です。デフォルトで.gitignoreを無視し、正規表現やグロブパターンが使いやすいです。

    インストール方法

  • macOS: brew install fd
  • Ubuntu/Debian: sudo apt install fd-find(コマンド名はfdfindの場合あり)
  • Windows: scoop install fd または choco install fd
  • 基本的な使い方

    <h1>ファイル名で検索</h1>
    fd パターン
    

    <h1>特定のディレクトリ内で検索</h1> fd パターン ディレクトリ

    <h1>隠しファイルも含めて検索</h1> fd -H パターン

    便利なオプション

  • -e 拡張子: ファイル拡張子でフィルタ
  • -t タイプ: ファイルタイプ(f: ファイル, d: ディレクトリ, l: シンボリックリンク)
  • -x コマンド: 見つかったファイルに対してコマンドを実行
  • -E パターン: 除外パターン
  • -s または --case-sensitive: 大文字小文字を区別
  • 実践的な活用例

    <h1>画像ファイルを検索</h1>
    fd -e jpg -e png
    

    <h1>空のディレクトリを検索</h1> fd -t d -E "node_modules" --exec ls -d {} \;

    <h1>見つかったファイルを削除(確認付き)</h1> fd "*.log" -x rm -v

    まとめ:これらのツールを使いこなすためのヒント

  • エイリアスを設定する: よく使うコマンドは.bashrc.zshrcにエイリアスを登録しましょう。
  •   alias cat='bat'
      alias ls='exa'
      alias grep='rg'
      alias find='fd'
      
  • 組み合わせて使う: パイプで連携することでさらに強力に。
  •   fd -e py | rg "test"
      
  • ヘルプを活用: 各ツールの--helpで詳細なオプションを確認。
  • これらのツールを導入するだけで、日々の開発作業が格段に効率的になります。ぜひ試してみてください。