如何以仅保留每个软件包最新版本的方式清理var / cache / apt

路易斯·阿尔瓦拉多(Luis Alvarado)

我想知道一种清理var / cache / apt文件夹的方法,即如果它有多个版本,则仅保留软件包的最新版本;如果它是该程序中的唯一一个,则保留软件包。

例如我有几个vlc包(vlc_1.1.11,vlc_1.1.12 ..)和几个wine包(wine1.3_1.3.34,wine1.3_1.3.35,wine1.3_1.3.36,wine1.3_1.3.37 ...)和许多其他人一样。

因此,如何在此文件夹中进行清理,使其仅保留最新软件包。目前,我有2.5 GB,其中大多数只是旧软件包和较新的软件包混合在一起。

恩佐替布

我建议以下bash脚本

#!/bin/bash

cd /var/cache/apt/archives/
printf '%s\n' *.deb | 
  awk -F_ '{ print $1 }' |
  sort -u | 
  while read pkg; do 
    pkg_files=($(ls -t "$pkg"_*.deb))
    nr=${#pkg_files[@]}
    if ((nr > 1)); then
      unset pkg_files[0]
      echo rm "${pkg_files[@]}"
    fi
  done

如果您对输出列表感到满意,请echo从该rm行中删除

它能做什么?

  1. 它列出了所有deb软件包文件
  2. 从头到尾删除文件名中的所有内容"_",获取程序包名称
  3. 对名称进行排序,删除重复项
  4. 每个名字

    1. 按时间顺序列出与该名称对应的软件包文件
    2. 计算列表中的软件包文件数
    3. 如果列表中有多个包裹

      1. 从列表中删除第一个和更新的文件
      2. 从磁盘删除与该名称对应的所有其他文件

它可以在效率,列出相应套餐之差而得到名称仅包文件加以改进,sortsort -u

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何以仅保留每个软件包最新版本的方式清理var / cache / apt

来自分类Dev

需要尝试安装特定的软件包版本——但是 apt-cache madison,apt-cache 策略似乎只列出了最新版本

来自分类Dev

如何使用apt-get安装软件包的最新版本?

来自分类Dev

如何使用apt-get安装软件包的最新版本?

来自分类Dev

如何获得通过apt-get安装的软件包的最新版本?

来自分类Dev

尚未安装的apt-cache / apt搜索软件包

来自分类Dev

APT "/var/cache/apt/archives" 缓存配置

来自分类Dev

apt-get 如何使用/var/cache/apt/archives/lock?

来自分类Dev

apt-cache搜索未找到g ++软件包

来自分类Dev

apt-cache显示要安装的新版本,但apt-get不执行任何操作

来自分类Dev

如何使用apt安装最新版本的Git?

来自分类Dev

如何使用apt安装最新版本的Git?

来自分类Dev

目录/ var / cache / apt无法自动清除?

来自分类Dev

var / cache / apt / archives占用巨大空间

来自分类Dev

目录/ var / cache / apt无法自动清除?

来自分类Dev

从/ var / cache / apt删除文件(不存档)

来自分类Dev

var / cache / apt / archives占用巨大空间

来自分类Dev

apt-cache不显示软件包的旧版本

来自分类Dev

apt-get会下载手动添加到/ var / cache / apt / archives中的相同版本的软件包吗?

来自分类Dev

apt-get会下载手动添加到/ var / cache / apt / archives中的相同版本的软件包吗?

来自分类Dev

较新版本的软件包如何从 apt-get install 中消失?

来自分类Dev

当我们从ppa安装软件包时,软件包是否在/ var / cache / apt / archive位置下载?

来自分类Dev

如何通过管道将已安装的软件包传输到apt-cache?

来自分类Dev

如果有两个软件包,如何从“ apt-cache show”输出中找出软件包的版本?

来自分类Dev

apt-cache 显示可用的错误包版本

来自分类Dev

如何以编程方式从apt获取软件包列表?

来自分类Dev

如何以非交互方式安装apt软件包?

来自分类Dev

apt-cache --installed show列出未安装的软件包

来自分类Dev

卸载软件包,而不删除apt-cache中下载的.deb?

Related 相关文章

  1. 1

    如何以仅保留每个软件包最新版本的方式清理var / cache / apt

  2. 2

    需要尝试安装特定的软件包版本——但是 apt-cache madison,apt-cache 策略似乎只列出了最新版本

  3. 3

    如何使用apt-get安装软件包的最新版本?

  4. 4

    如何使用apt-get安装软件包的最新版本?

  5. 5

    如何获得通过apt-get安装的软件包的最新版本?

  6. 6

    尚未安装的apt-cache / apt搜索软件包

  7. 7

    APT "/var/cache/apt/archives" 缓存配置

  8. 8

    apt-get 如何使用/var/cache/apt/archives/lock?

  9. 9

    apt-cache搜索未找到g ++软件包

  10. 10

    apt-cache显示要安装的新版本,但apt-get不执行任何操作

  11. 11

    如何使用apt安装最新版本的Git?

  12. 12

    如何使用apt安装最新版本的Git?

  13. 13

    目录/ var / cache / apt无法自动清除?

  14. 14

    var / cache / apt / archives占用巨大空间

  15. 15

    目录/ var / cache / apt无法自动清除?

  16. 16

    从/ var / cache / apt删除文件(不存档)

  17. 17

    var / cache / apt / archives占用巨大空间

  18. 18

    apt-cache不显示软件包的旧版本

  19. 19

    apt-get会下载手动添加到/ var / cache / apt / archives中的相同版本的软件包吗?

  20. 20

    apt-get会下载手动添加到/ var / cache / apt / archives中的相同版本的软件包吗?

  21. 21

    较新版本的软件包如何从 apt-get install 中消失?

  22. 22

    当我们从ppa安装软件包时,软件包是否在/ var / cache / apt / archive位置下载?

  23. 23

    如何通过管道将已安装的软件包传输到apt-cache?

  24. 24

    如果有两个软件包,如何从“ apt-cache show”输出中找出软件包的版本?

  25. 25

    apt-cache 显示可用的错误包版本

  26. 26

    如何以编程方式从apt获取软件包列表?

  27. 27

    如何以非交互方式安装apt软件包?

  28. 28

    apt-cache --installed show列出未安装的软件包

  29. 29

    卸载软件包,而不删除apt-cache中下载的.deb?

热门标签

归档