让Homebrew列出所有包依赖关系的简单方法

时间:2016-12-08 00:38:05

标签: github package command-line-interface homebrew

是否有命令brew显示任何给定包的所有已安装或可选依赖项?看看哪些安装包本身就是其他包的依赖关系也会很有帮助。

5 个答案:

答案 0 :(得分:16)

brew deps --tree --installed

感谢rob-kovacs建议添加--tree

有关详细信息,请参见此超级有用的文章:https://blog.jpalardy.com/posts/untangling-your-homebrew-dependencies/ 尤其是如果您对创建依赖关系树图感兴趣。

答案 1 :(得分:5)

您可以使用info命令,如。

brew info ffmpeg

它将显示公式的信息和依赖关系。此外,它显示此软件包是否通过它的名称后面的滴答来安装。

答案 2 :(得分:5)

命令:

brew deps --include-build --tree $(brew leaves)

方便的别名:

alias brewlist="brew leaves | xargs brew deps --include-build --tree"

这样,您将获得依赖关系分层打印,并且每个程序包仅打印一次。

答案 3 :(得分:4)

我发现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.

示例1:

brew deps --tree fontconfig

输出1:

fontconfig
└── freetype
    └── libpng

示例2:

brew deps --tree --1 fontconfig

Output2:

fontconfig
└── freetype

还有更多的开关,解释如下:

brew help deps

答案 4 :(得分:4)

这是一个命令,它将列出不依赖于任何其他公式(叶)的所有公式,并在它们前面列出其所有依赖关系。

brew leaves | xargs brew deps --installed --for-each | sed "s/^.*:/$(tput setaf 4)&$(tput sgr0)/"