问题描述
我在尝试在 ~/.bashrc
中添加新目录时不小心取消了 $PATH
的所有目录。我在编辑时打开了一个新的终端窗口,现在 $PATH
为空。我担心如果我从另一个驱动器启动以找到 $PATH
,我将无法再次启动到该驱动器。
基本上, echo $PATH
的默认结果是什么?
最佳方法
你的问题的答案是:
PATH=$(getconf PATH)
并可在任何 POSIX 兼容系统上运行。所选答案是在不删除先前现有内容的情况下扩充路径的正确方法。如果您使用 bash,您可能会考虑:
PATH+=:$mynewdir
次佳方法
您可以在 /etc/environment 中找到它:
$ /usr/bin/cat /etc/environment
PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games"
所以,只需获取它:
$ source /etc/environment
$ echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games
第三种方法
将 :$PATH 添加到导出行的末尾修复了问题,例如export PATH=<directory to be added>:$PATH
我将此行添加到 ~/.bash_rc
文件而不是 ~/.profile
文件中,以便我可以在新终端中立即看到效果,并且基于此处的信息出于其他原因:https://superuser.com/questions/176404/linux-bash-not-loading-profile-in-new-session
对我来说,添加新目录之前 echo $PATH
的默认输出是:
/usr/lib/lightdm/lightdm:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games
第四种方法
默认路径是
/home/_username_/bin:/usr/local/bin:/usr/bin:/bin:/usr/bin/X11:/usr/games
希望这对您有帮助