PATH 變數不適用於 sudo 指令

PATH 變數不適用於 sudo 指令

如果我將新路徑放入我的$PATH變數中,如下所示:

PATH=$PATH:$HOME/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=$PATH:$HOME/pear/bin/到根目錄的 PATH 變數中。

sudo -i
echo $PATH

查看 root 的 PATH 目錄。

然後當你在 root 帳號中時

ls -a

您將看到root 帳號的文件.bashrc.profile

將該行加入PATH=$PATH:$HOME/pear/bin/適當的文件中。

相關內容