我是个菜鸟。我尝试在重复项中搜索答案,但都无济于事。我$PATH
在尝试安装 ghc 时意外更改了终端中的变量。每次打开终端窗口时,我都会得到:
bash: export: `/.cabal/bin:/opt/ghc/7.6.3/bin:': not a valid identifier
bash: warning: here-document at line 120 delimited by end-of-file (wanted
EOF')
Command 'cat' is available in '/bin/cat'
The command could not be located because '/bin' is not included in the
PATH environment variable.
cat: command not found
当我输入:
echo $PATH
它给了我以下内容:
/.cabal/bin:/opt/cabal/1.16/bin:/opt/ghc/7.6.3/bin:
我可以通过输入以下内容来修复它:
source /etc/environment
但这仅适用于当前终端会话。如果我关闭窗口并打开一个新窗口,它会返回到错误的$PATH
。
我怎样才能永久恢复$PATH
默认设置?
答案1
根据steeldriver的评论,请尝试以下两个简单步骤:
1.备份现有配置:
mv -v ~/.bashrc ~/.bashrc_bak && mv -v ~/.profile ~/.profile_bak
2. 创建新的安全副本:
cp -v /etc/skel/{.bashrc,.profile} $HOME
笔记:这一切都可以通过单行,在我自己的系统上演示:
andrew@athens:~$ cp -v -S _bak /etc/skel/{.bashrc,.profile} $HOME
'/etc/skel/.bashrc' -> '/home/andrew/.bashrc' (backup: '/home/andrew/.bashrc_bak')
'/etc/skel/.profile' -> '/home/andrew/.profile' (backup: '/home/andrew/.profile_bak')
andrew@athens:~$
最后添加您自己制作的任何自定义内容之前从这两个备份文件中,我所说的“定制”是指:
- 对这些文件中的默认设置进行
$PATH
了更改,我注意到,在您的情况下,您安装的/opt
不是默认设置$PATH
- 更改默认终端提示符
- 默认别名的添加
以及对安全默认值两个文件的...
答案2
有很多选择。你可以看看这里。
请记住,在我发送给您的链接中,他们主要建议如何在当前会话中设置路径。
但是,如果您将路径更改为~/.profile
或中的建议值~/.bashrc
(取决于您修改了哪一个),那么就应该没问题。
答案3
我希望这是有帮助的:
rick@dell:~$ echo "$PATH"
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin
我没有改变我的路径(我记得)我注意到“游戏”在那里,但我不玩游戏,所以我假设它是默认的。您可能希望将其用作起始路径,以便让您走上正确的道路,可以这么说。
我正在使用 Ubuntu 16.04。
要添加路径,此链接可能会有帮助:unix-linux-添加路径。
答案4
按照以下步骤恢复 PATH 环境变量:
- 从 /etc/profile.d/ 中删除罪魁祸首文件(如果有)
- 从 /etc/profile 或 ~/.bashrc 中删除罪魁祸首行(如果有)
- 执行
source /etc/environment
开始重置path环境变量 - 执行
source /etc/profile
后跟source /etc/profile.d/*
- 终于
source ~/.bashrc