apt-get install:是否有一个命令可以对一批软件包进行操作?

apt-get install:是否有一个命令可以对一批软件包进行操作?

我注意到,每当我使用该命令时,sudo apt-get -y autoremove我需要的相当多的包都会在要删除的列表中。

在浏览了论坛上的一些帖子后,我发现该命令会删除已自动安装的软件包。为了防止软件包自动删除,我必须将其标记为

sudo apt-get install <package-name>

假设我有 120 个指定要自动删除的包。

如何使用单个命令将它们标记为手动安装?

答案1

将所有准备好自动删除的包存储在一个文本文件中,然后apt-mark manual对这些包运行命令将其标记为手动安装。

for i in $(cat ~/Desktop/package.txt); do sudo apt-mark manual $i ; done

~/Desktop/package.txt- 包含要设置为手动安装的软件包名称。

答案2

我不确定您是否理解 autoremove 在手册页中建议什么:

自动移除

      autoremove is used to remove packages that were automatically
      installed to satisfy dependencies for other packages and are now no
      longer needed.

http://manpages.ubuntu.com/manpages/saucy/man8/apt-get.8.html

它们已经安装,因此“标记为已安装”,但它们不是必需的,因为它们是您已删除的软件包的依赖项。

如果您愿意,您可以将其删除,或者如果您不想删除它们,您可以保留它们。

如果您觉得有问题,我们需要有关您安装/删除的软件包的更多信息。也许 pastebin 是 autoremove 希望删除的软件包列表?

答案3

好吧,只需apt-get -s autoremove从终端复制包列表并将其粘贴到后面sudo apt-get install

相关内容