Macのターミナルで「command not found」エラーを修正する方法
Macのターミナルでコマンドを実行しようとした際に、「command not found」というエラーに遭遇することがあります。
AppleはmacOS Catalinaからデフォルトシェルをbashからzshへ変更したため、macOS Catalina以降を使用しているユーザーは「zsh: command not found: brew」といったメッセージを目にする可能性が高いでしょう。一方、macOS Mojave以前のユーザーの場合は「bash: brew: command not found」というエラーが表示されることが多いです。
ターミナルに「command not found」と表示されるのは、入力したコマンドが検索パス内に見つからないことを意味します。この問題はいくつかの原因によって発生します。次項で詳しく解説していきます。
Macの「command not found」エラーの対処法:
- 1. Macのターミナルで「command not found」エラーが発生する原因は?
- 2. Macのcommand not foundエラーを修正する方法は?
Macのターミナルで「command not found」エラーが発生する原因は?
以下のような状況に該当する場合、Macでcommand not foundエラーが発生することがあります:
- コマンドの入力内容に誤りがある。
- コマンドがMacにインストールされていない。
- コマンドが誤って削除された、またはシステムディレクトリが変更・削除された。
- コマンドを検索するディレクトリを指定する$PATHが不完全だったり、不正確に設定されていたり、クリアされていたりする。
原因が何であれ、以下の一般的なガイドに従うことで、Macの「command not found」エラーを解決できます。
Macのcommand not foundエラーを修正する方法
Macにおける「command not found」エラーにはさまざまなケースがあります。zshを採用しているmacOS Montereyやその他のmacOSバージョンでは、「zsh: command not found」というメッセージが表示されることがあります。また、この問題はどのコマンドでも発生する可能性があります。以下は、ユーザーから報告された代表的なエラーメッセージの一覧です:
- zsh: command not found: $
- zsh: command not found: ls
- zsh: command not found: brew
- zsh: command not found: import
- bash: brew: command not found
- -bash: $: command not found
- sudo: command not found
- sudo: nano: command not found
幸いなことに、これらのエラーは通常、以下の解決策で解決できます。コマンドが正常に実行できるようになるまで、順番に試してみることをおすすめします。
- 解決策1: コマンドの構文を確認する
- 解決策2: $PATHをmacOSのデフォルトパスに設定する
- 解決策3: ディレクトリをPATHに追加する
- 解決策4: macOSを再インストールするかTime Machineから復元する
コマンドの構文を確認する
コマンドに不慣れなユーザーは、必要な箇所にスペースを入れ忘れたり、不要な記号をコマンドに含めてしまったりといったミスをしがちです。例えば、Nanoでhostsファイルを編集する際に「sudo nano/private/etc/hosts」と入力してしまうケースがありますが、正しい構文ではnanoの後にスペースが必要で、「sudo nano /private/etc/hosts」と入力すべきです。
また、「$ brew install pyqt」のような行をそのままターミナルにコピー&ペーストすると、Macで「-bash: $: command not found」というエラーが返されるだけです。これは、$がドキュメント上のサンプルとして示されているターミナルプロンプトに過ぎず、実際のコマンドには含める必要がないためです。
そのため、Macのターミナルで「command not found」エラーに遭遇したら、まず最初に確認すべきはコマンドの構文です。自分で入力するよりも、元のテキストをコピーしてターミナルに貼り付けるのが確実です。さらに、同じコマンドを使用した他の事例と比較してみるのも有効な手段です。
$PATHをmacOSのデフォルトパスに設定する
パスとは、ファイルシステム内の特定の場所を指すものです。同様に、ターミナルコマンド用のPATHシステム変数($PATH)は、実行可能プログラムが存在する複数のディレクトリを指定します。$PATHが設定されていれば、Macはコマンド実行時にどこを検索すればよいかを把握できるため、絶対パスを入力する必要がなく、「ls」のようにコマンド名だけで実行できます。
しかし、実行したいコマンドが存在するパスが設定されていない場合、「zsh: command not found」や「zsh: command not found ls」などのエラーが発生します。
その場合は、まず以下の手順でコマンドが格納されている$PATHが正しく構成されているかを確認してください:
- ターミナルを開きます。
- 以下のコマンドを実行して、macOSがコマンドラインで使用する標準パスを設定します:
export PATH="/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin" - パスワードを入力してEnterキーを押します。
先ほど失敗したコマンドを再度実行し、macOS Montereyで「zsh: command not found」エラーが再発しないか確認してみてください。問題が解決しない場合は、次の解決策に進みましょう。
ディレクトリをPATHに追加する
M1 Macで「zsh: command not found」が発生するもう一つの原因は、入力したコマンドがデフォルトの$PATHに保存されていないことです。現在のデフォルト$PATHは、ターミナルで以下のコマンドを実行することで確認できます:
echo $PATH
このコマンドを実行すると、おそらくデフォルトの$PATHとして「/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin」が表示されます。これらはMacがコマンドラインで使用する5つのディレクトリです。
- /usr/local/bin
- /usr/bin
- /bin
- /usr/sbin
- /sbin
使用したいコマンドがこれらのデフォルトディレクトリ以外に保存されている場合は、以下の手順で$PATHに追加しましょう。例えば、Macで「zsh: command not found: brew」エラーに遭遇し、Homebrewが通常の/usr/local/ではなく/opt/homebrew/binに保存されていることに気づいたとします。その場合は、以下の方法で修正できます:
- ターミナルを起動します。
- 以下のコマンドを実行して、新しいディレクトリ(例: /opt/homebrew/bin)を一時的に$PATHに追加します:
export PATH=$PATH:/opt/homebrew/bin - echoコマンドで新しいディレクトリが追加されたかどうかを確認します:
echo $PATH
使用したいコマンドが正常に動作するかテストしてみてください。パスの変更を永続化したい場合は、使用しているシェルに応じて.zshrcファイル、.bash_profile、または.bashrcファイルに追加する必要があります。以下の手順に従ってください:
- ターミナルで以下のコマンドを実行して、ホームディレクトリに移動します:
cd - 以下のコマンドでホームディレクトリ内のファイルを一覧表示し、zshを使用している場合は.zshrcファイルが存在するか確認します:
ls -la - .zshrcファイルがない場合は、以下のコマンドで新規作成します。すでに存在する場合は手順4に進んでください:
touch .zshrc - 以下のコマンドを実行して、nanoで.zshrcを編集します:
nano .zshrc - 続けて以下のコマンドを実行し、新しいディレクトリ(例: /opt/homebrew/bin)を.zshrcに追加します:
export PATH=$PATH:/opt/homebrew/bin - ターミナルを終了して、再び開きます。
この方法でも解決しない場合は、引き続き次の方法をお試しください。M1 MacでもIntel Macでも、「zsh: command not found」エラーを解決できます。
macOSを再インストールするかTime Machineから復元する
システム内部を操作中にシステムファイルやフォルダを誤って削除してしまった場合、ターミナルコマンドの実行に不可欠なファイルまで削除してしまった可能性があります。そのような場合は、これらのシステムファイルを復元する必要があります。
Time MachineでMacを定期的にバックアップしている場合は、以前の状態に復元することができます。バックアップがない場合は、ドライブをフォーマットせずにmacOSを再インストールするという選択肢もあります。OSの再インストールでは基本的にデータ損失は発生しませんが、万が一に備えて、作業前に重要なファイルのバックアップコピーを作成しておくことをおすすめします。
-
PCで「オペレーティングシステムが見つかりません」エラーが出たときの対処法まとめ
PCの電源を入れると、黒い画面に「Missing Operating System(オペレーティングシステムが見つかりません)」や「Boot device not found, please install an operating system on your hard disk(ブートデバイスが見つかりません)」といったエラーメッセージが表示され、Windowsが起動できなくなることがあります。突然のトラブルに焦ってしまいますが、落ち着いて対処すれば解決できるケースがほとんどです。この記事では、オペレーティングシステムが見つからないエラーの原因と、初心者でも実践できる5つの対処法を詳しく解
-
Bugsplat.dll が見つからないエラーの原因と解決方法を徹底解説
BUGSPLAT.DLL は、Windows オペレーティングシステムにおける重要なシステムファイルの一つです。Windows で利用される一連のドライバー関数やプロシージャを含んでおり、このファイルが欠落すると、関連するソフトウェアの動作に深刻な支障をきたす可能性があります。 Bugsplat.dll が見つからないエラーを解決する最良の方法 1. エラーについて 「bugsplat.dll was not found(bugsplat.dll が見つかりません)」「bugsplat.dll could not be located(bugsplat.dll を特定できません)」「Canno