让 Homebrew 列出所有包依赖项的简单方法
Easy way to have Homebrew list all package dependencies
是否有命令 brew
显示任何给定软件包的所有已安装或可选依赖项?查看哪些安装包本身是其他包的依赖项也会很有帮助。
您可以使用类似的信息命令。
brew info ffmpeg
它将显示公式的信息和依赖关系。此外,它还显示是否已安装此软件包,并在其名称后打勾。
对于所有包:
brew deps --tree --installed
仅限一包(例):
brew deps --tree --installed vim
感谢 rob-kovacs 建议添加 --tree
有关详细信息,请参阅这篇有用的文章:https://blog.jpalardy.com/posts/untangling-your-homebrew-dependencies/
特别是如果您有兴趣创建依赖关系树图。
我发现 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
输出2:
fontconfig
└── freetype
还有更多开关解释为:
brew help deps
这是一个命令,它将列出不依赖于任何其他公式(叶)的所有公式,并为每个公式列出其所有依赖项。
示例输出行:
awscli: gdbm readline sqlite tcl-tk xz
命令:
brew leaves | xargs brew deps --installed --for-each | sed "s/^.*:/$(tput setaf 4)&$(tput sgr0)/"
命令:
brew deps --include-build --tree $(brew leaves)
方便的别名:
alias brewdeps="brew leaves | xargs brew deps --include-build --tree"
这样您将分层打印依赖项并且每个包只打印一次。
是否有命令 brew
显示任何给定软件包的所有已安装或可选依赖项?查看哪些安装包本身是其他包的依赖项也会很有帮助。
您可以使用类似的信息命令。
brew info ffmpeg
它将显示公式的信息和依赖关系。此外,它还显示是否已安装此软件包,并在其名称后打勾。
对于所有包:
brew deps --tree --installed
仅限一包(例):
brew deps --tree --installed vim
感谢 rob-kovacs 建议添加 --tree
有关详细信息,请参阅这篇有用的文章:https://blog.jpalardy.com/posts/untangling-your-homebrew-dependencies/ 特别是如果您有兴趣创建依赖关系树图。
我发现 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
输出2:
fontconfig
└── freetype
还有更多开关解释为:
brew help deps
这是一个命令,它将列出不依赖于任何其他公式(叶)的所有公式,并为每个公式列出其所有依赖项。
示例输出行:
awscli: gdbm readline sqlite tcl-tk xz
命令:
brew leaves | xargs brew deps --installed --for-each | sed "s/^.*:/$(tput setaf 4)&$(tput sgr0)/"
命令:
brew deps --include-build --tree $(brew leaves)
方便的别名:
alias brewdeps="brew leaves | xargs brew deps --include-build --tree"
这样您将分层打印依赖项并且每个包只打印一次。