WHERE(実行ファイル検索)

にメンテナンス済み

「このコマンドの実行ファイルはどこにあるのか?」と調べたい場面があります。

WHERE コマンドは、指定した名前の実行ファイルの場所を検索するコマンドです。PATH 環境変数に設定されたディレクトリを基に検索を行います。

基本的な使い方

構文
WHERE コマンド名

使用例

where notepad
×
コマンド プロンプトのアイコン
コマンド プロンプト
Microsoft Windows [Version xx.x.xxxxx.xxx]
(c) 2026 Ribbit App Development All rights reserved.
 
C:\users\user>where notepad
C:\Windows\System32\notepad.exe
C:\Windows\notepad.exe
C:\users\user>

notepad という名前の実行ファイルが存在するすべてのパスが表示されます。

where python
×
コマンド プロンプトのアイコン
コマンド プロンプト
Microsoft Windows [Version xx.x.xxxxx.xxx]
(c) 2026 Ribbit App Development All rights reserved.
 
C:\users\user>where python
C:\Users\user\AppData\Local\Programs\Python\Python312\python.exe
C:\users\user>
チェック

開発環境で「python」や「node」などのコマンドがどのバージョンを参照しているか確認したい場合に特に便利です。

主要オプション

オプション説明
/R ディレクトリ指定したディレクトリから再帰的に検索
/Q結果を表示せず、終了コードだけを返す
/Fファイル名をダブルクォーテーションで囲む
/Tファイルのサイズと更新日時を表示

再帰検索(/R)

/R オプションを使用すると、指定したディレクトリ以下を再帰的に検索します。

Cドライブ全体からnotepad.exeを検索
where /R C:\ notepad.exe

ワイルドカードで検索

すべてのバッチファイルを検索
where /R C:\Scripts *.cmd
×
コマンド プロンプトのアイコン
コマンド プロンプト
Microsoft Windows [Version xx.x.xxxxx.xxx]
(c) 2026 Ribbit App Development All rights reserved.
 
C:\users\user>where /R C:\Scripts *.cmd
C:\Scripts\backup.cmd
C:\Scripts\cleanup.cmd
C:\Scripts\deploy\setup.cmd
C:\users\user>

ファイルサイズと日時を表示する(/T)

where /T notepad
×
コマンド プロンプトのアイコン
コマンド プロンプト
Microsoft Windows [Version xx.x.xxxxx.xxx]
(c) 2026 Ribbit App Development All rights reserved.
 
C:\users\user>where /T notepad
201216 2024-10-05 14:35:22 C:\Windows\System32\notepad.exe
201216 2024-10-05 14:35:22 C:\Windows\notepad.exe
C:\users\user>

存在確認に使う(/Q)

/Q オプションを使用すると、画面への表示を抑制し、終了コードだけを返します。バッチファイルでの条件分岐に使用できます。

コマンドが利用可能か確認
@echo off
where /Q git
IF %ERRORLEVEL% EQU 0 (
    echo Git はインストールされています。
) ELSE (
    echo Git が見つかりません。PATHを確認してください。
)

実践例:開発環境の確認

複数のツールがインストールされているか一括で確認するバッチファイルの例です。

check_tools.cmd
@echo off
echo === 開発環境チェック ===
echo.

for %%T in (git node python java) do (
    where /Q %%T
    if !ERRORLEVEL! EQU 0 (
        echo [OK] %%T
    ) else (
        echo [NG] %%T が見つかりません
    )
)
WHERE が見つからない場合

検索対象のファイルが見つからない場合、WHERE コマンドは「情報: 与えられた条件に一致するファイルが見つかりませんでした。」というメッセージを表示し、終了コード 1 を返します。

まとめ

操作コマンド
コマンドの場所を検索where コマンド名
再帰的に検索where /R ディレクトリ 名前
サイズと日時を表示where /T コマンド名
存在確認(表示なし)where /Q コマンド名

関連記事

練習問題

練習問題

バッチファイル内で特定のコマンドが利用可能か(PATH が通っているか)を確認する方法として正しいものはどれですか?

回答がサーバーに送信されることはありません
#コマンドプロンプト #バッチファイル #WHERE #コマンド #PATH