apt-cache unmet 显示不存在的包

apt-cache unmet 显示不存在的包

运行apt-cache unmet输出一个 1.2 MB 的文件,其中包含缺少的包依赖项,其中任何一个都不存在(包本身)。

这可能是由于将旧配置恢复到全新安装的 Ubuntu 所致。我尝试删除、清理和清除任何相关配置。

可以确认这些包不存在。有什么建议可以让 apt-cache 知道我还没有这些包,因此不存在依赖项标志?

答案1

在我的系统上,输出大约为 4MB(>87,000 行)。使用字节数和行数
计算得出。apt-cache unmet | wc -capt-cache unmet | wc -l

通过快速浏览源代码,我并没有学到很多东西,但我强烈猜测这个命令是为了打印所有未满足的依赖关系而设计的。所有可安装的软件包,而不是仅仅安装那些实际的包。

在我看来,手册页的措辞man apt-cache不够明确,但以下是重要的片段:

   unmet
       unmet displays a summary of all unmet dependencies in the package cache.

   -i, --important
       Print only important dependencies; for use with unmet and depends. Causes only Depends and Pre-Depends relations to
       be printed. Configuration Item: APT::Cache::Important.

因此,如果添加参数,您还可以以某种方式缩小输出范围-i。我不确定这到底会过滤掉什么,但它会过滤掉不到 10% 左右,在我的情况下大约 7,000 行。

$ apt-cache unmet -i | wc -l
7096

相关内容