
次のように変数に新しいパスを入力すると$PATH
、
PATH=$PATH:$HOME/pear/bin/
その後、Pear bin 内のプログラムにアクセスできるようになります。期待どおりに動作しますが、次の操作を実行できます。
phpunit -version
phpunit は私の pear bin にあるプログラムなので、これは実行できません:
sudo phpunit -version
次のエラーが発生します:
sudo: phpunit: command not found
コマンドsudo
にはユニバーサルアクセスがありませんか?
答え1
sudoオプション-E
は環境変数を保持しますが、そうでない場合は環境変数の大部分が破棄されます。したがって、次のコードが機能するはずです。
sudo -E phpunit -version
答え2
これについてはよく分かりませんですが、試してみてください。
PATH=$PATH:$HOME/pear/bin/
おそらく、ルートの PATH 変数に同じ PATH を追加する必要があります。
sudo -i
echo $PATH
ルートの PATH ディレクトリを確認します。
次にルートアカウントで
ls -a
ルート アカウントのファイルが.bashrc
表示されます。.profile
PATH=$PATH:$HOME/pear/bin/
適切なファイルに行を追加します。