如何在 Ubuntu 中将 $PATH 重置为其默认值?

Cee*_*Cee 38 command-line environment-variables

$PATH在尝试添加新目录时不小心取消了所有目录~/.bashrc。我在编辑时打开了一个新的终端窗口,现在$PATH是空的。我担心如果我从另一个驱动器启动以找到$PATH我将无法再次启动到这个驱动器。

基本上,默认结果是echo $PATH什么?

Bru*_*uce 43

你的问题的答案是:

PATH=$(getconf PATH)
Run Code Online (Sandbox Code Playgroud)

并适用于任何 POSIX 兼容系统。所选答案是在不删除先前现有内容的情况下增加路径的正确方法。如果您使用 bash,您可能会考虑:

PATH+=:$mynewdir
Run Code Online (Sandbox Code Playgroud)

  • 如果 PATH 变量为空,则 `PATH=$(getconf PATH)` 将没有用,只会导致 `bash: getconf: No such file or directory` (3认同)
  • 那工作会让我感到惊讶。也许没有周围的“$(...)”东西的“导出”可能,但它会是发生在那里的任何东西。使用“源/etc/..”。无论如何,如果您甚至找不到“getconf”,请尝试“/usr/bin/getconf”。 (2认同)

Man*_*uez 25

您可以在 /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"
Run Code Online (Sandbox Code Playgroud)

所以,只需来源:

$ source /etc/environment 
$ echo $PATH

/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games
Run Code Online (Sandbox Code Playgroud)


Cee*_*Cee 9

添加 :$PATH 到导出行的末尾修复了问题,例如 export PATH=<directory to be added>:$PATH

我将此行添加到~/.bash_rc文件而不是~/.profile文件中,以便我可以在新终端中立即看到效果,并且出于其他原因,基于此处的信息:https : //superuser.com/questions/176404/linux-bash-not-在新会话中加载配置文件

对我来说,echo $PATH添加新目录之前的默认输出是:

/usr/lib/lightdm/lightdm:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games