11 月 9 日,我尝试安装 BasKet Note Pads 的最新稳定版本,但显然它并不立即得到支持,因为它需要移植到 QT4 和 KDE 4,不管这意味着什么。该程序已移植,但截至 2010 年,它仍处于测试阶段,这意味着它基本上存在缺陷,缺乏我需要的功能。
因此,我尝试安装 BasKet v1.x,它需要 QT3 和一堆我不太了解的其他东西。我尝试安装它们,结果占满了我 15 GB 硬盘的 20%。当然,我从未让 BasKet 工作过,但我安装的软件包仍然存在,现在我需要有效地卸载当天安装的所有内容。
是否有命令可以卸载在某个日期(在我的情况下是 11 月 9 日)安装的所有软件包?
答案1
具体日期%yyyy-%mm-%dd
替换在这里,
grep "2015-12-19.*.install " /var/log/dpkg.log | awk '{ print $4 }' | cut -d: -f1
你会得到一个包裹清单,
libck-connector0
libgssrpc4
libkadm5clnt-mit9
libkdb5-7
libkadm5srv-mit9
libgnutlsxx27
....
....
将它们附加到 Apt 命令参数列表中xargs
:
grep "2015-12-19.*.install " /var/log/dpkg.log | awk '{ print $4 }' | cut -d: -f1 | xargs sudo apt-get --yes purge
答案2
如果您知道安装这些软件包的日期,我发现自动删除它们的最佳方法是使用以下命令:
grep "2015-12-19.*.install " /var/log/dpkg.log | awk '{ print $4 }' | cut -d: -f1
上面的命令将列出在命令中日期安装的所有软件包。最终的命令是:
grep "2015-12-19.*.install " /var/log/dpkg.log | awk '{ print $4 }' | cut -d: -f1 | sudo apt-get remove -y
根据您的需要替换日期,就可以开始了!
答案3
你可以通过执行以下操作按时间顺序查看已安装的软件包:
grep install /var/log/dpkg.log
(最后的条目将是最新的)
在左侧,您可以找到安装日期和时间。
选择要卸载的内容并执行
sudo apt-get remove package-name
此外,由于您的硬盘较小,我建议从磁盘中删除用于安装程序的 Deb 包:
sudo apt-get clean
这将从中删除 deb 文件/var/cache/apt/archives/