rootユーザーのPATH環境変数を変更しました。次のコマンドはパスも表示します。
su
env | grep ^PATH
パス=/root/.nix-profile/bin:/nix/var/nix/profiles/default/bin:/opt/distrod/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin :/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/home/pierre/.nix-profile/bin
しかし、
sudo env | grep ^PATH
パス=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
私が逃したものは何ですか?
書いてみるとわかる
sudo echo $PATH
ユーザーを変更する前にPATHがすでに評価されているため、機能しません。これはそれほど問題になるとは思わないが、他の考えはない。
ベストアンサー1
私が逃したものは何ですか?
このsudoは環境変数をクリーンアップし、明示的に許可された変数のみを渡します。