在Mac OSX 10.5中,它无法找到我的终端命令sudo,find等

时间:2009-03-11 22:54:30

标签: macos path terminal find sudo

我不知道发生了什么,但在我的Mac OSX 10.5终端上,它再也找不到我的sudo命令,或者找到命令等等。他们在那里因为如果我把/ 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 /须藤$ PATH“

我现在要说,我 我只是一个初学者,我必须为环境变量做一些事情(是他们被称为什么?)。我假设我只需要确保/ usr / bin / path在我的bash文件中,但它们是,并且它似乎不起作用。请帮忙!

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

任何帮助都会很棒。谢谢你 - 詹姆斯

4 个答案:

答案 0 :(得分: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

答案 1 :(得分:3)

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

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

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

现在您拥有了所需的命令。 (例如,尝试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
按下'控制' +' o'保存(WriteOut)和'控制' +' x'退出纳米。

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

答案 2 :(得分:1)

答案 3 :(得分:0)

我遇到了同样的问题,这就是我如何解决的问题。

首先,我通过这种方式将文件还原为原始文件

/usr/bin/nano ~/.bash_profile

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

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