Elm*_*ber 6 debian aptitude packages
有没有办法在 Debian 中获取通过 aptitude 安装的所有“主要”软件包?“main”是指通过安装命令提供给 aptitude 的包名称。相当于一个 Gentoo“世界”文件。
据我所知,您只能获得所有已安装软件包的列表,包括依赖项(从某个角度来看我并不真正关心)。我能想到的唯一另一种方法是解析 bash_history 文件以获取 aptitude 安装命令。
ear*_*arl 15
aptitude认为由于依赖关系安装的包是“自动”安装的。有了这些知识,您可以快速构建一个aptitude 搜索模式来列出所有未自动安装的已安装软件包:
aptitude search "?and(?installed, ?not(?automatic))"
Run Code Online (Sandbox Code Playgroud)
或者,使用搜索词的简短形式:
aptitude search '~i !~M'
Run Code Online (Sandbox Code Playgroud)
(请注意,这!是某些 shell 中的特殊字符。在上面,我用作'...'引号字符以使Bash高兴。)
最后,通过基本系统安装安装的软件包也将在上面列出。如果这是一个问题,您可以通过添加!~E过滤器来排除系统认为必不可少的包。或者,您可以在您认为是基本安装之后立即创建一个包列表,并以此为依据diff。
(grepping bash 历史当然也是一个快速而简单的选项,如果您主要对卸载一些最近安装的软件包感兴趣,它会很好用。但是,由于 bash 历史的大小有限,您将很难找到例如,一年前安装的软件包。)