其中命令未找到os x

los*_*aut 6 unix macos terminal

好的,所以标题是非常自我解释的,当我输入where ...它作为命令它返回

-bash: where: command not found
Run Code Online (Sandbox Code Playgroud)

我目前的bash档案包括:

export PATH="/usr/local/lib:$PATH"
export PATH="/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/lib/node_modules/bin:$PATH"
Run Code Online (Sandbox Code Playgroud)

我用谷歌搜索了一段时间,发现大多数人只需要/usr/bin/usr/sbin我有两个.

有任何想法吗?

小智 16

"where"是为csh构建的shell.那是你真正想要的吗?

"which"和"whereis"位于/ usr/bin下,并告诉您在哪里可以找到给定的命令.


Kei*_*son 7

斯图尔特说,这where是一个tcsh内置命令.它是which命令的扩展版本; which告诉您命令名称解析的内容,并where显示$PATH可能找到命令的所有位置(包括别名,内置函数和可执行文件)的列表.

bash等价物是type -a.

如果您愿意,可以将此功能定义添加到您的.bashrc.bash_profile:

where() { type -a "$@" ; }
Run Code Online (Sandbox Code Playgroud)

输出格式不完全相同,但它为您提供相同的信息.

(或者你可能会考虑重新训练自己使用type -a而不是where.)