是否有命令可以用来轻松找到可执行文件的路径?我在本地机器上寻找识别 - 类似 pwd 的东西?
pwd identify
=> /usr/local/bin/identify
答案1
which
将在您的路径中搜索您提供的参数,它几乎可以在任何 BSD 或 SysV UNIX 上找到
moriarty:~ dave$ which bash true false
/bin/bash
/usr/bin/true
/usr/bin/false
答案2
如果您使用内置的 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 来说结果类似。
答案3
尝试“定位识别”
答案4
这取决于您要查找的内容。大多数实用程序都依赖于路径变量。但是,如果您要查找的内容在您的路径中,那么您可能不需要知道它在哪里,除非有同一可执行文件的多个副本。
不过,这并不适用于在 OSX 中运行的大多数程序,因为它们的运行方式与普通的 linux/unix 二进制文件不太一样。以下是一些查找路径语句中不存在的程序的方法。
寻找:
sudo find / -name <FILE>
这将查找您作为第一个参数提供的文件系统上存在的任何内容。它需要以 root 身份运行才能搜索私有目录。如果您不完全确定名称,它还支持通配符。
终端:
如果您在 Finder 中有该文件,则可以打开终端窗口并将该文件放入其中。然后终端将显示该文件的完整路径。
聚光灯:
非常不言自明。你捐献处理器周期,让它保存你的 fi 的索引