如何重设$ PATH?


14

我试图在$ PATH中添加一些内容,但完全出错了。我现在无法运行任何命令,例如ls。我已经看过这个答案, 并使用了以下几行:

PATH=/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin
PATH=$PATH:~/bin

这些行可以暂时解决问题。但是,当我重新启动终端时,似乎忘记了这些更改。

如何永久重置$ PATH?

我正在运行最新版本的Mountain Lion。


5
修复它:/bin/rm ~/.bash_profile
Nosrettap 2013年

2
好问题。您总是可以将解决方案放入答案中。
bassplayer7


1
意识到您已经解决了问题,遇到类似问题的用户也可能会在以下位置找到帮助/etc/paths
David Smith

Answers:


16

通常,建议删除的答案.bash_profile不是一个好主意。除了PATH定义外,还可以在该文件中设置其他内容。

如果要撤消实验的影响,只需用删除或注释掉该PATH#

您不想像PATH从第二行那样从头开始编辑,而是将其追加。向路径添加内容的首选方法是:

export PATH=$PATH:$HOME/bin

编辑 由于您PATH陷入困境,因此您无权访问通常的命令来进行这些更改。作为临时解决方案,您可以通过输入以下内容在“终端”窗口(而不是)中定义新的最小路径.bash_profile

PATH=/bin:/usr/bin

这将使您暂时可以访问nano ls mv vi catrm-检查和编辑您.bash_profile的问题以及解决问题的基本工具...

重复一遍,PATH在进行修复时,除会话持续时间外,请勿将此定义放在任何地方。


5

我建议:

source /etc/profile

这就是Mac用来设置初始路径的方法,它将为您添加除用户添加项之外的所有内容。

我在〜/ .bash_profile中做了相当多的路径修改,并将其放置在文件的顶部,因为在修改别名或其他内容后,在工作时重新加载配置文件时遇到问题,并且它在我的路径中添加了重复的引用。无需检查是否已添加,而是将路径重置为草稿版本,然后重新添加所需的项目。


3

删除您的bash配置文件以恢复默认设置$PATH。在Terminal.app中输入以下命令:

/bin/rm ~/.bash_profile

更改将在下一个Shell或终端会话中进行。


根据原始发问者的评论进行回答,以从未回答的队列中删除问题。
Graham Miln

4
好吧,如果您想保留个人资料中的其他内容,一个简单的方法/bin/mv ~/.bash_profile ~/bash_profile可能会更好
nohillside

1
这是我在整个SE网站中找到的最简单的答案。谢谢!
mr5

0

OSX的默认值$PATH是从/etc/paths文件的内容生成的,修改起来很简单。


1
修改/etc/paths可能会导致更改被下一个OS X更新覆盖的风险,这也不适用于用户特定的路径,例如~/bin
nohillside

没错,尽管我通常在.rc之后的版本中处理这些问题。我还/etc/paths没有通过更新进行重置(自从开始使用以来已有好几年了brew)。
克里斯·基尔

目前,我希望破解盒装配置,希望这对以后的覆盖更新不会造成影响。
克里斯·基尔

0

这些方法很棒!如果您使用zsh遇到此问题,请删除~/.zshrc它,但是它将摆脱您的zsh设置。


您宁愿保留副本/bin/mv ~/.bash_profile{,.bck}
MauroPorras
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.