有没有办法知道我通过 apt-get 安装了哪些软件包(除了自动安装的软件包)?

有没有办法知道我通过 apt-get 安装了哪些软件包(除了自动安装的软件包)?

我尝试记录通过命令行中的 apt-get 安装的程序,以便将它们带到我的下一个 Ubuntu 安装中。有时我会安装一些东西来看看它是否适合我。测试后,我有时会忘记将它们添加到我的日志中。

当我尝试从软件管理器的历史记录中查找时,它会向我显示一个长列表,因为它还包括自动安装的列表。

有没有办法让我只筛选出那些因为我安装gem或其他原因而没有自动安装的库?我希望它只知道gem它附带的库,因为下次安装时它们都会自动安装gem

另外,是否有任何工具可以帮助安装软件包?我的意思是,我曾经使用过一种工具来跟踪您手动编译和安装的程序。它会跟踪 makefile 的操作,并使将来更容易卸载或撤消它所做的操作。有没有你可能听说过的工具?

一些让未来更容易实现的想法

我能想到的另一个解决方案是编写一个install脚本,首先记录程序名称,然后运行apt-get install xxxx。或者有没有更好的方法通过管道传输命令参数来apt-get记录它们,通过别名命令或其他方式?这会更好,因为当您在之后按下 tab 时,它会保持包名称的自动完成sudo apt-get install chromium-br...

答案1

Apt跟踪标记为自动安装的内容和标记为手动安装的内容。您可以使用 获取手动安装的软件包列表apt-mark showmanual

请记住,除了您手动安装的内容之外,此列表还将包括系统标记为手动安装的内容,以保护它们免受侵害autoremove

Synaptic有一个很好的图形查看器,可以搜索 apt 历史记录文件-->历史记录。历史记录包括您安装的软件包、安装的依赖项以及升级和删除的软件包。

apt 历史记录本身位于/var/log/apt/history.log

答案2

试试这个。只需按下键盘上的Ctrl+ Alt+T即可打开终端。打开后,运行以下命令:

sudo apt-cache pkgnames

这将为您提供系统中每个软件包的列表

答案3

在终端中输入以下内容

cd Desktop
dpkg --get-selections | grep install > installed.txt

您的桌面上将出现一个包含所有已安装软件包的文本文件。

相关内容