使用apt-get从命令行安装/删除软件包列表

我正在为我们的团队编写Makefile,以便能够使用安装软件包等所需的所有软件来设置本地环境,以便他们可以快速开发而无需确定要安装的软件。 我们的存储库有一个PACKAGES文件,其中包含可以使用这个小gem安装的所有必需的ubuntu软件包:

 [unix]$ sudo dpkg --set-selections < PACKAGES [unix]$ sudo apt-get -u dselect-upgrade 

这很好,因为通过将它放在Makefile中,每个人都可以轻松设置环境。 面临的挑战是如何在项目完成后恢复其环境。 如果要清理环境,如何卸载所有PACKAGES (及其未使用的依赖项)? 是否有从命令行中删除包列表的等效方法?

像这样……

 sudo apt-get remove $(cat packages.txt) 
  • 但是,如何确定文件中的任何软件包是否尚未安装在系统上,或者是否稍后从另一部分软件中添加? 删除它可能会破坏其他程序;)您可能需要一次删除它们,并检查是否可以删除它们而不卸载任何其他程序。