我在将目录添加到路径时犯了一个错误,然后执行
$ PATH=/path/to/my/directory/
代替
$ PATH=/path/to/my/directory/:$PATH
因此,我的$PATH
变量现在包含仅有的我自己的目录,这当然是个问题。我不知道之前路径中到底是什么,但如果我可以重置为出厂默认设置,我就可以从那里开始并根据需要添加内容。
有没有简单的方法可以实现这一点?
答案1
如果可以的话,登出和重新登录。
否则,你可以从
export PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
并添加缺失的条目。
答案2
来自 bash(1) 手册页:
什么时候狂欢被调用为一个交互式登录 shell,或者被调用为一个非交互式 shell,- 登录选项,它首先从文件 /etc/profile 中读取并执行命令(如果该文件存在)。读取该文件后,它会按顺序查找 ~/.bash_profile、~/.bash_login 和 ~/.profile,然后从第一个存在且可读的文件中读取并执行命令。
因此,在您的系统上,您很可能只需要查看 /etc/profile 中的默认 PATH 值,进行设置,然后根据您自己的登录/配置文件 bash 脚本对 PATH 的操作进行构建。
如果你不使用 bash(1) 而是使用其他 shell,那么使用“man那个Shell名称“找出它的调用行为,并执行类似的步骤。
作为一种快捷方式,在当前 shell 中(再次假设您使用的是 bash(1)),键入“bash --login”以获取新的登录 shell 进程;然后,使用以下命令保存路径的值
echo $PATH > /tmp/myPath.txt
然后“退出”登录 shell 并输入
export PATH=`cat /tmp/myPath.txt`
(请注意最后一个表达式中反引号的使用)。
或者,如果您是一个具有复制/粘贴功能的终端应用程序,您只需“bash --login”,然后将 PATH 值复制到剪贴板,退出,然后“导出 PATH”并粘贴 PATH 值。
答案3
在终端打开 bashrc 文件
gedit ~/.bashrc
在最后一行添加
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:$PATH export PATH
然后保存文件。
为了验证,请打开一个新终端并输入:
printenv
答案4
您还可以创建一个新用户并$PATH
从那里复制条目。
除此之外,我在 Ubuntu 服务器上发现:
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games