在Mac / OSX / MACOS上,<commandline> <arg>在哪里实际显示?

时间:2019-07-11 05:09:43

标签: macos terminal path

通才MACOS问题。

我试图找到被告知要运行的可执行文件的位置。为了运行文件,我输入:

postgres -V

我确定我已经卸载了它,但仍然返回了“版本”。

我知道,如果我运行命令,则终端将在我所在的本地文件夹中查找。但是postgres的文件/可执行文件不在该文件夹中。 Mac还可以查找其他哪些文件夹?

我知道它将使用.bashrc.bash_profile来找出PATH的列表,但除此之外,我不确定OSX会查找可执行文件的过程。

有人可以阐明吗?还是让我指向文档?搜索时找不到我想要的东西。

更好的是,我可以执行某种命令来告诉我特定可执行文件的位置吗?

1 个答案:

答案 0 :(得分:1)

shell通过$PATH浏览以找到可执行文件。您可以通过发出以下命令来查看它:

echo $PATH

您还可以使用which查找操作系统在哪里可以找到可执行文件(即实际正在运行的可执行文件):

which postgres

如果失败,则表明您的命令是别名或函数,您可以使用type进行检查:

type postgres

({postgres通常不是别名或函数,这只是出于完整性考虑。)

  

我知道,如果我运行命令,则终端将在我所在的本地文件夹中查找

在Windows / DOS上是正确的。在Unix / Linux(包括OSX)上,它通常为 true ,除非将.显式添加到$PATH中(出于安全考虑,建议不要 原因)。要在当前目录中启动某些内容,通常需要显式添加以下文件夹:./my_command