我已经使用 Ubuntu 12.04 很长一段时间了,从来没有遇到过这样的问题。我试图在我的 Ubuntu 系统上安装 python 3.2,每次运行代码编译 python 源代码时,都会出现此错误:
'Command 'sudo' is available in '/usr/bin/sudo'
The command could not be located because '/usr/bin' is not included in the PATH environment variable.
sudo: command not found'
我也尝试运行gksudo
命令来查看我的环境显示的内容,但几乎遇到了相同的错误。
答案1
正如错误所言,您应该将/usr/bin
目录添加到 PATH 环境变量中。为此,请在终端中运行以下命令:
export PATH=$PATH:/usr/bin
使用后sudo
,您可以编辑/etc/environment
文件以使更改永久生效,因此,在终端中运行:
sudo nano /etc/environment
编辑文件。确保路径如下所示:
PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games"
Ctrl使用+保存并关闭文件,然后在系统询问时X按下。Y
也可以看看:如何将目录添加到 PATH?
答案2
我遇到了问题并通过编辑.bashrc
文件解决了它
.bashrc
使用 nano打开你的文件$ nano ~/.bashrc
将以下行添加到
.bashrc
文件export PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games: /usr/local/games"
按 Ctrl+X 保存文件
它会要求更改文件,按下y和Enter。
你完成了。
答案3
当您想向系统变量添加新值时,您最有可能向或文件PATH
添加新行。~/.bashrc
~/.bash_profile
例如,如果您想添加/opt/netbeans/bin
到PATH
,您必须将这一行添加到文件末尾~/.bashrc
:
export PATH=$PATH:/opt/netbeans/bin
让我们把这一行分解一下。
export PATH
- 这里我们引用PATH
变量=
- 我们想分配它新的价值观使用=
运算符(字符串的其余部分是将存储在中的值PATH
)$PATH
- 我们将变量PATH
赋值当前命令之前的变量:
- 我们为新值添加分隔符/opt/netbeans/bin
- 并添加新的价值PATH
您必须看到所有内容都引用或文件PATH
中的变量,并且~/.bashrc
~/.bash_profile
确保你扩大-
export PATH=$PATH:/opt/netbeans/bin
和不是像这样覆盖 -
export PATH=/opt/netbeans/bin
变量PATH
您必须确保,在PATH
您使用的每一个引用中$PATH:
以及它之后的附加值
如果不起作用,你可以做这样的事情:
- 确保
/etc/environment
文件中存在类似下一个变量的内容,并且它从未在此文件中重新定义:
PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games"
- 将上述
PATH
变量中缺失的路径添加到PATH
位于/etc/environment
在每次更改文件后进行测试之前,不要忘记更新配置。
例如对于~/.bashrc
文件:
source `~/.bashrc`
答案4
您的 PATH 变量已弄乱。您必须在 $PATH 中添加 /usr/bin。要纠正此问题,请在终端上运行以下命令。
export PATH="/usr/bin:$PATH
但是上述命令仅在当前会话中有效,当您注销并重新登录时,您将遇到相同的错误。通过运行以下命令永久设置 PATH
echo "PATH=/usr/bin:$PATH" >> ~/.bash_profile