如何找出 ideviceinstaller 的安装位置?

如何找出 ideviceinstaller 的安装位置?

我刚刚通过命令行安装了 ideviceinstaller。

Michaels-MacBook-Air:1.0.1 michael.nares$ cd
Michaels-MacBook-Air:~ michael.nares$ brew uninstall ideviceinstaller
Error: No such keg: /usr/local/Cellar/ideviceinstaller
Michaels-MacBook-Air:~ michael.nares$ brew install --HEAD ideviceinstaller
==> Cloning 
Updating 
==> ./autogen.sh
installed software in a non-standard prefix.

Alternatively, you may set the environment variables libimobiledevice_CFLAGS
and libimobiledevice_LIBS to avoid the need to call pkg-config.
See the pkg-config man page for more details.
Error: Homebrew doesn't know what compiler versions ship with your version
of Xcode (6.1.1). Please `brew update` and if that doesn't help, file
an issue with the output of `brew --config`:

Note that we only track stable, released versions of Xcode.

Thanks!


Michaels-MacBook-Air:~ michael.nares$ 

但是当我进入“Finder”并按Cmd+时F,我找不到它。有什么方法可以知道它安装在哪里吗?

答案1

但是当我进入“Finder”并按Cmd+时F,我找不到它。有什么方法可以知道它安装在哪里吗?

有几种方法可以解决这个问题。

检查 Homebrew 配方本身。

首先,让我们来看看 Homebrew 的ideviceinstaller配方如官方 Homebrew GitHub 存储库所示。您无需成为一名资深程序员或了解大量 Ruby(Homebrew 就是基于 Ruby 构建的)即可解释此代码。关键部分是test do靠近底部的区域:

test do
  system "#{bin}/ideviceinstaller --help |grep -q ^Usage"
end

请注意二进制调用#{bin}前的ideviceinstaller。该#{bin}变量转换为,/usr/local/bin因此我们知道ideviceinstaller二进制文件的完整路径应该是/usr/local/bin/ideviceinstaller

使用 检查which

要确认的完整路径,您只需在终端中的命令行中ideviceinstaller使用即可,如下所示:which

which ideviceinstaller

并且返回的路径应该/usr/local/bin/ideviceinstaller和上面的 Homebrew 公式推导出来的路径相同。

使用 检查brew info

也就是说,您呈现的输出显示了这条路径:

/usr/local/Cellar/ideviceinstaller

您可以通过 Homebrew 本身来确认这一点,如下所示:

brew info ideviceinstaller

那么为什么它会位于/usr/local/Cellar/以及中/usr/local/bin/?很简单。Homebrew/usr/local/Cellar/会将文件安装到 中,但会创建符号链接以/usr/local/bin/允许轻松、全系统地访问二进制文件。至少这是我根据对 Mac OS X 和 Linux 工作原理的了解以及有多少开发人员从源代码​​安装这样的二进制文件而得出的假设。

locate通过终端检查。

如果其他方法都失败了,您也可以使用终端版的“Spotlight” locate。您只需运行以下命令:

locate ideviceinstaller

该命令应返回包含该单词的文件路径列表ideviceinstaller。如果您没有得到任何结果,您可能只需要locate像这样更新数据库:

sudo /usr/libexec/locate.updatedb

然后再次运行该命令。

相关内容