Answers:
如果您使用内置的bash type
,它将显示命令的所有(路径中)位置:
$ type -a ls
ls is aliased to `ls --color=always'
ls is /bin/ls
$ type -a printf
printf is a shell builtin
printf is /usr/bin/printf
$ type -a touch
touch is /usr/bin/touch
touch is /bin/touch
如果命令是一个函数,它将列出函数定义:
$ type -a somefunc
somefunc is a function
somefunc ()
{
echo "hello, world"
}
这些示例来自Ubuntu系统,但对于OS X,结果将相似。
which
不显示自定义脚本的路径(位于中$PATH
)。type
做。
这取决于您要查找的内容。大多数实用程序取决于path变量。但是,如果您要查找的是您所要寻找的机会,那么除非有相同可执行文件的多个副本,否则您实际上不需要知道它在哪里。
但这不适用于大多数在OSX中运行的事物,因为它们的运行方式不像普通的linux / unix二进制文件。以下是一些查找路径声明中未包含的内容的方法。
找:
sudo find / -name <FILE>
这将找到您作为第一个参数给出的文件系统上存在的任何内容。它需要以root身份运行才能搜索私有目录。如果您不确定名称,它还支持通配符。
终奌站:
如果文件在finder中,则可以打开一个终端窗口,然后将文件放入其中。然后使用终端显示文件的完整路径。
聚光灯:
很自我解释。您正在捐赠处理器周期,以使其保持您的fi的索引
which
尽管该命令将正常工作,但通常不是用于执行此类工作的正确工具。请参阅此U&L问答:unix.stackexchange.com/questions/85249/…–