Written by
JackYamamoto概要: この投稿では、Macで「コマンドが見つからない」というエラーが表示される理由と、問題を解決する4つの方法を説明します。"zsh: command not found: brew" のような例を用いて、ステップバイステップで案内します。
時々、Macのターミナルウィンドウでlsコマンドなどのコマンドを実行しようとすると、「コマンドが見つかりません」というエラーが発生することがあります。
AppleはmacOS Catalinaでデフォルトのシェルをbashからzshに変更したため、macOS Catalina以降を実行しているユーザーはおそらく"zsh: command not found: brew"のようなメッセージを見るでしょう。しかし、macOS Mojave以前を実行しているユーザーはおそらく"bash: brew: command not found."のようなエラーを見るでしょう。
macOS Ventura/Monterey/Big Sur/CatalinaでZshをBashに変更する方法
この投稿では、Macでデフォルトのシェルをzshからbashに変更する方法をステップバイステップで案内します。macOS Ventura、Monterey、Big Sur、Catalinaでzshからbashに切り替えることができます。 もっと見る >>
ターミナルが「コマンドが見つかりません」と言うとき、入力したコマンドが検索パスに含まれていないことを意味します。次に説明するように、これはいくつかの理由によって発生する可能性があります。
Macのターミナルで「コマンドが見つからない」というエラーが表示される理由は?
次のいずれかが起こると、Macの「コマンドが見つからない」というエラーが発生する可能性があります:
- コマンドが間違って入力されました。
- Macにインストールされていないコマンドです。
- コマンドが誤って削除されたか、システムディレクトリが変更または削除されました。
- コマンドを検索するためのディレクトリを指定する$PATHが不完全で、不正確に設定されている、またはクリアされています。
理由が何であれ、Macで「コマンドが見つからない」というエラーを修正するために、以下の一般的な手順に従うことができます。
Macの「コマンドが見つからない」というエラーを修正する方法は?
Macで「コマンドが見つからない」というエラーに関しては、さまざまなケースがあります。Mac Montereyやzshを使用する他のmacOSバージョンで「zsh: command not found」というメッセージが表示されることがあります。問題はどのコマンドに対しても発生する可能性があります。ユーザーが受け取った一般的なエラーメッセージのいくつかを以下に示します:
- zsh:コマンドが見つかりません:$
- zsh:コマンドが見つかりません:ls
- zsh:コマンドが見つかりません:brew
- zsh:コマンドが見つかりません:import
- bash:brew:コマンドが見つかりません
- - bash:$:コマンドが見つかりません
- sudo:コマンドが見つかりません
- sudo:nano:コマンドが見つかりません
幸いなことに、これらのエラーは通常、次の解決策によって解決できます。コマンドを正常に実行できるようになるまで、1つずつ試してみることをお勧めします。
- 修正1:コマンドの構文を確認
- 修正2:$PATHをデフォルトのmacOSパスに設定
- 修正3:ディレクトリをPATHに追加
- 修正4:macOSを再インストールするか、Time Machineから復元する
コマンドの構文を確認
コマンドに慣れていないユーザーは、必要な場所にスペースを含めるのを忘れたり、コマンドに不必要な記号を追加したりするなど、間違いをすることがよくあります。たとえば、sudo nano/private/etc/hosts と入力してNanoでホストファイルを編集しようとすると、正しい構文ではnanoの後にスペースが必要であり、sudo nano /private/etc/hostsとする必要があります。
また、ターミナルに$ brew install pyqt などの行をコピー&ペーストすると、「-bash:$:コマンドが見つかりません」というエラーが表示されることがあります。これは、$は単なるサンプルのターミナルプロンプトであり、コマンドに表示する必要がないものです。
したがって、Macのターミナルで「コマンドが見つかりません」というエラーに遭遇した場合は、まずコマンドの構文を確認する必要があります。自分で打つのではなく、元のテキストをターミナルにコピーすることが最善です。また、同じコマンドを使用する他の例と自分のコマンドを比較することも役立ちます。
$PATHをデフォルトのmacOSパスに設定
パスはファイルシステム内の特定の場所を指します。同様に、TerminalコマンドのPATHシステム変数($PATH)は、実行ファイルがある複数のディレクトリを指定します。$PATHを使用すると、Macはコマンドの実行にどこを探すかを知っており、コマンドの絶対パスではなくlsなどの名前のみを入力すれば済みます。
ただし、実行したいコマンドが存在するパスが設定されていない場合、「zsh:コマンドが見つかりません」といったMacで「コマンドが見つかりません」というエラーが表示されます。
その場合は、最初に次の手順でコマンドが存在する$PATHが構成されていることを確認する必要があります:
- Terminalを開く。
- 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に保存されていることに気づいた場合、次の解決策を実行して修正してください:
- ターミナルを起動します。
- 新しいディレクトリ(e.g. /opt/homebrew/bin)を一時的に$PATHに追加するために以下のコマンドを実行します:export PATH=$PATH:/opt/homebrew/bin
- echoコマンドで新しいディレクトリが追加されているか確認します:echo $PATH
今使用したいコマンドが動作するかテストできます。変更を永続化したい場合は、使用しているシェルに応じて.zshrcファイル、.bash_profile、または.bashrcファイルに追加する必要があります。以下の手順に従ってください:
- ターミナルでこのコマンドを実行してホームディレクトリに移動します。cd
- zshを使用している場合は、ホームディレクトリ内のファイルをリストアップし、.zshrcファイルがあるか確認します。ls -la
- 存在しない場合は、nanoエディタを使用して次のコマンドで作成します。それ以外の場合は、手順4に進みます。touch .zshrc
- nanoを使用して.zshrcを編集するために次のコマンドを実行します。nano .zshrc
- 新しいディレクトリ(e.g /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を再インストールすることができます。オペレーティングシステムを再インストールしてもデータが消失することはないはずですが、操作する前に重要なファイルのコピーを作成することをお勧めします。
この記事では、MacのTerminalアプリケーションを工場出荷時のデフォルトに迅速かつ安全に復元するための3つの方法を紹介します。これらの手順は、Mac上のzshとbashシェルの両方に適用されます。
他にも読む:
Createinstallmedia: Command Not Found (Sonoma/Earlier) Fixed