我如何找出 brew 链接的最终位置?

我如何找出 brew 链接的最终位置?

brew link将符号链接放到各处。如何找出某个特定软件包的位置?

例如,我通过 brew 安装了 cairo。brew list cairo显示已安装文件的列表。当我链接 cairo 时,brew 会创建符号链接。

$ brew link cairo                                          
Linking /usr/local/Cellar/cairo/1.14.0... 28 symlinks created

我如何找出这些符号链接在哪里?

答案1

符号链接是通常在 中/usr/local/, 被定义为brew --prefix。要查看应用程序符号链接到的位置(使用wget作为示例),

$ brew link wget --dry-run
Warning: Already linked: /usr/local/Cellar/wget/1.16.1
To relink: brew unlink wget && brew link wget

根据brew手册页:

If  --dry-run or -n is passed, Homebrew will list all files which would be linked or which would be deleted by brew link --overwrite, but will not actually link or delete any files.

要查看所有文件的位置,请使用list [formula] --verbose如下选项

$ brew list wget --verbose
/usr/local/Cellar/wget/1.16.1/AUTHORS
/usr/local/Cellar/wget/1.16.1/bin/wget
/usr/local/Cellar/wget/1.16.1/ChangeLog
/usr/local/Cellar/wget/1.16.1/COPYING
/usr/local/Cellar/wget/1.16.1/INSTALL_RECEIPT.json
/usr/local/Cellar/wget/1.16.1/NEWS
/usr/local/Cellar/wget/1.16.1/README
/usr/local/Cellar/wget/1.16.1/share/info/wget.info
/usr/local/Cellar/wget/1.16.1/share/man/man1/wget.1

答案2

如果包已经链接,您可以列出现有链接:

brew unlink <formulae> --dry-run

要获取有关链接的更多信息:

brew unlink <formulae> --dry-run | xargs ls -l

相关内容