🍺

[Homebrew] コマンド早見表

に公開

はじめに

Homebrewでのコマンドを毎回忘れそうになるので備忘録。

早見表

参照系

  • brew list: 今入ってるパッケージを一覧表示。
    • --cask, --formula指定もできる。 以降のコマンドも同様。
    • --versionsでバージョン一覧を表示できる。
  • brew outdated: 更新可能なパッケージを表示。
brew list
brew outdated --cask

更新系

  • brew update: パッケージ定義更新。実際の更新は走らない。
  • brew upgrade: 更新実行。一括で更新される。
    • パッケージ名指定で、更新対象を絞れる。
    • --dry-runオプションで、更新したらどのバージョンになるかを、依存関係込みで確認できる。
  • brew cleanup: 古いバージョンのバイナリやキャッシュなど、不要なファイルを削除
    • upgrade単体だと実行されない。
# 個別更新
brew upgrade --cask codex chatgpt

# 影響確認
brew upgrade --dry-run

# 不要な残骸の削除
brew cleanup

導入系

  • brew install <package>: パッケージのインストール。
  • brew uninstall <package>: パッケージのアンインストール。
  • brew search <keyword>: パッケージ名の検索。
brew search microsoft

brew install --cask microsoft-excel microsoft-outlook 

確認系

  • brew doctor: PATHや競合など問題があれば表示
  • brew --prefix <package>: インストール先のPATHを表示
  • brew info <package>: packageの詳細を表示
  • brew deps <package>: package自体の依存関係(動作に必要なライブラリ)を表示。
  • brew uses <package>: packageに依存している他のpackageがあれば表示。「このpackageを消したら他の何が壊れるか」の確認に使える。
    • 検索範囲の明示が必要。
    • --installed: 自分の環境内に入ってるものだけ確認
    • --eval-all: Homebrew全体を確認
brew doctor

brew --prefix python
brew deps python
brew uses python --installed

管理系

  • brew pin <package>: パッケージをアップデート対象から除外。バージョン固定。
  • brew unpin <package>: pin解除。
  • brew reinstall <package>: パッケージを再インストール。修復用途で使われる。
    • 今ある定義でインストールし直す。uninstall+installのように完全削除→再導入の挙動とは異なる。
brew pin node
brew unpin node

brew reinstall node

移行系

  • brew bundle dump: 現在のインストール状態をBrewfileとして出力
  • brew bundle install: Brewfileを元に環境を再現
    • Brewfileはバージョン情報を保持しないので、インストール時点の最新版が入る
# 現在の環境を書き出し
brew bundle dump

# Brewfileから一括インストール
brew bundle install

参考

これ以外にもいろんなコマンドがあるので、詳細な説明は公式Doc参照。
https://docs.brew.sh/Manpage

Discussion