是否有命令 brew显示任何给定软件包的所有已安装或可选的依赖项?查看哪些安装包本身是其他包的依赖项也会很有帮助。
brew
您可以使用如下的 info 命令。
brew info ffmpeg
它将显示您的信息和公式的依赖关系。此外,它显示如果这个包安装了一个勾后的名称。
所有套餐:
brew deps --tree --installed
只适用于一个包裹(例如:
brew deps --tree --installed vim
感谢 Rob-kovacs建议增加 --tree
--tree
有关详细信息,请参阅这篇有帮助的文章: < a href = “ https://blog.jpalardy.com/post/untangling-your-homebrem- 依赖关系/”rel = “ norefrer”> https://blog.jpalardy.com/posts/untangling-your-homebrew-dependencies/ 特别是如果您对创建依赖关系树的图表感兴趣。
我发现 brew deps --tree开关对于在命令行中可视化依赖关系也非常有帮助。官方文件:
brew deps --tree
brew deps --tree [--1] [filters] [--annotate] (formulae|--installed): Show dependencies as a tree. When given multiple formula arguments, output individual trees for every formula.
例子一:
brew deps --tree fontconfig
成果1:
fontconfig └── freetype └── libpng
例子二:
brew deps --tree --1 fontconfig
成果2:
fontconfig └── freetype
还有更多的开关是这样解释的:
brew help deps
下面是一个命令,它将列出所有不依赖于任何其他公式的公式(留下) ,并为每个公式列出它的所有依赖项。
输出行示例:
awscli: gdbm readline sqlite tcl-tk xz
命令:
brew leaves | xargs brew deps --formula --for-each | sed "s/^.*:/$(tput setaf 4)&$(tput sgr0)/"
没有 xargs 的备用命令:
brew deps --formula --for-each $(brew leaves) | sed "s/^.*:/$(tput setaf 4)&$(tput sgr0)/"
brew deps --include-build --tree $(brew leaves)
方便的化名:
alias brewdeps="brew leaves | xargs brew deps --include-build --tree"
这样,您将获得 分层打印的依赖关系和每个包将只打印一次。