当我在 Linux 平台上安装 maven 3.5.4 时遇到此错误:
$ sudo export PATH=/usr/local/apache-maven-3.5.4/bin
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
我也尝试过export PATH=/usr/local/apache-maven-3.5.4/bin
,但是没用。
答案1
看起来您已经更改了路径。我可以用一种简单的方式重现您的错误...
$ PATH=/some/path
$ sudo uname -r
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
通常,您可以通过关闭终端并打开一个新终端来最轻松地修复此问题,因为对 PATH 的更改仅适用于此 shell 及其子 shell。否则,source /etc/environment
如果您尚未编辑,请运行/etc/environment
。
如果不起作用,则意味着你在某个配置文件中更改了 PATH,例如~/.profile
或~/.bashrc
或/etc/environment
,你必须找到执行此操作的行并进行更改。你将看到如下行
PATH=/usr/local/apache-maven-3.5.4/bin
这意味着 shell 会搜索要运行的命令/程序的唯一目录是/usr/local/apache-maven-3.5.4/bin
。PATH 的更改应该在中~/.profile
,并且应该像这样:
PATH="$PATH:/usr/local/apache-maven-3.5.4/bin"
添加$PATH:
到开始意味着/usr/bin
将包含您现有的 PATH,其中包括所有其他找到必要命令的位置。
如果您已更改/etc/environment
,请撤消更改(如果您保存了备份),或者用原始内容替换您在那里添加的内容:
PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games"
请注意,您仍然可以访问不在 PATH 中的命令使用完整路径, 例如:
/usr/bin/sudo /bin/nano /etc/environment
还请注意,您不需要export
更改 PATH,因为它已导出。您也不需要sudo
将其分配给您的 PATH。