初心者向けコンテンツです。
「ネットで調べたら、コマンドプロンプト(cmd)でコマンドを入力するよう書いてあるけど、いざ叩いてみると以下のメッセージが出力されて、コマンドが実行できない。」
'[コマンド名]' は、内部コマンドまたは外部コマンド、
操作可能なプログラムまたはバッチ ファイルとして認識されていません。
コマンドラインの仕組み
Windowsに限った話ではないですが、ここではWindowsを前提として書きます。
コマンドプロンプトでコマンドを入力した場合、コンピュータは環境変数%PATH%に登録されているディレクトリを参照して、コマンド名に該当する実行ファイルがあるかどうかを確認します。このとき、拡張子は読み飛ばされます(a.exeであれば、aというコマンドで実行される)。
PATHの値を確認する方法はいくつかあります。
- cmd上でpathと入力して実行
- cmd上でecho %PATH%と入力して実行
- 「システムのプロパティ」>「環境変数」を開き、PATHの値を確認
実行したいコマンドのパスがこの中に入っていないと、「コマンドが見つからない」という状態となり、前述のエラーメッセージが出力されます。
この状態を「パスが通っていない」といいます。
解決策1:パスを通す
「環境変数」を開き、PATHに必要なディレクトリ名を追加します。
セパレータはセミコロン(;)です。スペースは入れないようにしましょう(間違えてスペースを入れてコマンドが見つからないことがしばしばあります)。
解決策2:実行ファイルをフルパスで指定する
一時的にコマンドを実行したいだけであれば、コマンド名を実行ファイル名(フルパス)に置き換えれば実行できます。