所以,就目前而言,假设我们只需要在基于 debian 的系统上使用它(但我将来需要能够这样做yum
)。
我现在拥有的最好的是dpkg-query
。所以,例如,如果我运行这个:
dpkg-query --show
Run Code Online (Sandbox Code Playgroud)
我会得到一个这样的列表(有几千个条目):
...
sudo 1.8.17p1-2
...
vim 2:7.4.1829-1
...
Run Code Online (Sandbox Code Playgroud)
虽然没有命名约定。一些包中有版本号,一些包中有架构。ex gcc-4.9-base:amd64
,但我想要的只有gcc 4.9
. 理想情况下,我希望能够获得所有已安装软件的供应商、产品和版本信息。有什么办法可以在本机上做到这一点,还是必须是某种“模糊”匹配?
我对查询包管理器的替代方法或其他一些我没有想到的方法持开放态度。我无法安装额外的包来实现这个目标(不过,如果存在的话,我很想看看它们是如何工作的)。