which コマンドジェネレーター
PATH内で実行可能ファイルを探すためのwhichコマンドを生成する
whichの使い方入門
## それぞれは何ですか?
`which`はコマンド名を受け取り、シェルが実際に実行する実行ファイルの完全なパスを返します。`$PATH`の順にチェックするため、複数のバージョンがインストールされている場合にどのバージョンが優先されるかを示してくれます。これは、「コマンドが見つかりません」といった問題や、エイリアス/シャドウイングの問題、PATH設定のミスを診断するのに最適なツールです。
## 使用方法
1. **オプションの設定**: `-a`(すべてマッチ)または`-s`(サイレント/エグジットコードモード)を切り替えます。 2. **名前の入力**: 参照したい実行ファイルの名前を入力します。 3. **コピー&実行**: 生成されたコマンドをターミナルに貼り付けます。
コマンドが見つかった場合のエグジットステータスは`0`で、そうでない場合は0以外の値になるため、`which`はシェルスクリプトでうまく機能します。
一般的なオプション
### 名前(位置指定) 解決対象となる実行可能ファイルの名前。例:`python`、`docker`、`node`。`which`は`$PATH`内で最初にマッチしたものを報告します。
### `-a` すべてのマッチ結果 最初のものだけでなく、`$PATH`内のすべてのマッチする実行可能ファイルを一覧表示します。重複インストールやシャドウインストール(例:異なるディレクトリにある2つの`python`バイナリ)を検出するのに利用できます。
### `-s` サイレントモード 何も出力しない——出口ステータスのみを信頼します(0 = 見つかった、非ゼロ = 見つからなかった)。スクリプト内の条件分岐に最適です:`if which docker -s; then ...`。
▶which、whereis、locateの違いは何ですか?
▶コマンドのインストールされているすべてのコピーを見つけるにはどうすればよいですか?
▶なぜ`which`では実行できるコマンドが見つからないのでしょうか?
このツールがあなたに役立ったなら、私にコーヒーをご馳走することをお勧めします。
私にコーヒーを買ってください。