質問: ### 前提・実現したいこと 急にMacのnpmコマンドが「command not found」と表示されましたの質問の続きとなります。 おそらくVisualStudio for Mac Preview版をインストールしたタイミングだと思いますが、インストール後に npm, cordova, adbなどのコマンドを実行すると全て「command not found」と表示されてしまうようになりました。 上記質問の回答を踏まえた上で、もう一度調査したのですが、解決しなかったため、再度質問させていただきます。 ### 発生している問題・エラーメッセージ npm, cordova, adbなどのコマンドが全て「command not found」となってしまう。 ※cd, pwd, lsといった標準のコマンドは入力可能 ※「su -」でrootユーザとして実行した場合は可能。(sudoはダメ) ``` $ cordova -bash: cordova: command not found ``` ### 該当のソースコード 上記質問で指摘されたのは、そもそも環境変数$PATHの値がおかしくなっていることが原因ということでした。 正常にコマンドが実行できていた時のPATHの内容を記録していないので、もとがどのような状態だったかはわかりません。 以下、現在の環境変数$PATHの内容です。 ``` $ echo $PATH "/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:"/usr/local/bin:/sbin";"; ``` ### 試したこと .bash_profileの内容がおかしいのかと思い、内容を確認したところ、以下のようになっていました。 ``` export ANDROID_HOME=/Users/ユーザ名/Library/Android/sdk export JAVA_HOME=`/usr/libexec/java_home -v 1.8` export PATH=$PATH:$ANDROID_HOME/tools:$ANDROID_HOME/platform-toolseval $(/usr/libexec/path_helper -s) ``` 特に問題は無いと思っています。ただ、上記「該当のソースコード」のとおり、PATHを出力したときにこの内容は出力されていません。 #そもそもこの時に.bash_profileの中身が出るのかどうかすら理解できていませんが・・・。 続いて、paths.d内を調べました。 ``` $ cd /etc/paths.d $ ls #結果なし ``` 現在調べた範囲は上記の内容となりますが、これ以上調べても解決方法がわからず、手詰まりの状態です。 解決策のご教示のほどお願い致します。 ### 追記 記述漏れがありました。「/usr/libexec/path_helper -s」を実行したところ、以下のようになっています。 ``` $ /usr/libexec/path_helper -s PATH="/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:"/usr/local/bin:/sbin";";"; export PATH; ``` 明らかにおかしいみたいですが、これを修正するにはどこを修正すれば良いのかがわかりません。 「source ~/.bash_profile」コマンドを実行したところ、以下のようになっています。 ``` $ source ~/.bash_profile -bash: export: `PATH;': not a valid identifier ``` .bash_profileの内容がおかしいというより、上記のpath_helperの出力結果がおかしいのを引津っているような気がします。
回答: > > .bash_profileの内容がおかしいというより、上記のpath_helperの出力結果がおかしいのを引津っているような気がします。 > > > いや、 path_helper の使い方としては、 /etc/profile にもありますが、 ``` eval `/usr/libexec/path_helper -s` ``` が正しいです。したがって、 .bash_profile の `$(/usr/libexec/path_helper -s)` はあきらかにおかしいです。 不要なので、削除されてはいかがでしょうか。