3

我不知道发生了什么,但是在 Mac OSX 10.5 上的终端中,它再也找不到我的 sudo 命令或 find 命令等。它们在那里是因为如果我放 /usr/bin/sudo 或 /usr/bin /发现它工作正常...

我的 .bash_login 文件如下所示: export PATH="/usr/local/bin:/usr/local/sbin:/usr/local/mysql/bin:/usr/bin$PATH"

我的 .bash_profile 文件如下所示: export PATH="/Library/Frameworks/Python.framework/Versions/Current/bin:/Library/Python/2.5/site-packages/django_trunk/django/bin:/usr/local/mysql /bin:/usr/bin/sudo$PATH"

我现在要说,我真的不知道我在用终端做什么。我只是这一切的初学者,我必须为环境变量(就是它们的名字吗?)做一些事情才能丢失。我想我只需要确保 /usr/bin/ 路径在我的 bash 文件中,但它们是,而且它似乎不起作用。请帮忙!

此外,当我使用 /usr/bin/find 命令时,它对我说“权限被拒绝”,即使我以系统管理员帐户登录 Mac OSX。我不明白。

任何帮助都会很重要。谢谢 - 詹姆斯

4

4 回答 4

8

看起来您的两个 PATH 导出格式都不正确:

export PATH="/usr/local/bin:/usr/local/sbin:/usr/local/mysql/bin:/usr/bin$PATH"

那里的最后一点不起作用。它应该是:

export PATH=/usr/local/bin:/usr/local/sbin:/usr/local/mysql/bin:/usr/bin:$PATH

注意到'$PATH' 之前的冒号了吗?这一点很重要 ;)

此外,双引号不是必需的。

如果这不起作用,我们将需要更多信息。即使在您的 shell 配置被加载后,其他东西也可能正在修改您的路径。

你可以发布结果:

$ echo $PATH

配置文件并不总是能很好地指示当前环境变量,因为它们会被整个系统中的许多程序和文件修改。要查看所有环境变量,您可以运行:

$ env
于 2009-03-11T22:58:51.410 回答
4

这应该可以完全永久地解决问题。

首先,在终端中使用以下命令导出环境路径。

export PATH=/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/b‌​in

现在你有了你想要的命令。(例如 try ls。您会看到该命令正在运行)。但这仅适用于当前会话。如果您关闭终端并打开一个新终端,您将遇到上一个问题。要使此更改永久生效,请使用以下命令,

转到主目录

cd ~

在 nano / vim 中打开 .bash_profile 文件(我在这里使用 nano)

nano .bash_profile

这将打开纳米编辑器。在新行中,粘贴以下内容;

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

按'control'+'o'保存(WriteOut)和'control'+'x'退出nano。

全部做完 !现在尝试命令。

于 2017-07-13T13:05:43.800 回答
1

查看 --- http://www.sweeting.org/mark/blog/2008/05/26/mac-os-x-tip-setting-path-environment-variables

于 2010-04-27T05:23:27.457 回答
0

我遇到了同样的问题,这就是我解决它的方法。

首先,我以这种方式将文件恢复为原始文件

/usr/bin/nano ~/.bash_profile

就我而言,我无法使用任何命令别名。如果不指定该命令的完整路径,即使 vi 或 vim 也无法工作。如果 nano 没有安装,只需用安装的编辑器替换命令中的 nano

之后,只需重新启动计算机。正如我在下面所说的那样,就我而言,我无法使用任何命令。尝试执行/usr/bin/source ~/.bash_profile 时,该命令失败。所以我不得不重新启动操作系统并且它工作

于 2018-07-23T13:48:52.880 回答