Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
unix/linux 中的 ldd 命令列出了程序的所有动态链接库。
如何确定相反的问题: 链接到指定共享库的程序列表是什么?
例如,我需要一种获取使用“libz”的程序列表的方法。
有这个命令吗?
我非常怀疑会有。这将需要保留所有可执行文件的数据库并记住它们所依赖的内容,如果您只从特定渠道安装软件,这可能是可能的,但它肯定无法跟踪您生成的可执行文件。更不用说这样的数据库在很大程度上是无用的,因此没有吸引力。
但是,如果您需要找到这样的可执行文件(例如,要知道删除共享库是否安全),您可以轻松找到其中的大部分。关键是您拥有的大多数可执行文件都位于内部/usr/bin或/usr/local/bin类似位置。因此,您只需要ldd在这些目录中的所有文件和grep您正在寻找的库上运行。
/usr/bin
/usr/local/bin
ldd
grep