В этой статье мы рассмотрим способы, с помощью которых можно вывести список, установленных в системе пакетов, и отсортировать этот список по размеру каждого пакета.
Это может быть полезным, когда место на компьютере ограниченно, и вы хотите определить основных «пожирателей» дискового пространства.
Выбор способа, которым мы будем пользоваться, зависит от вашего дистрибутива, а если быть более точным, то от того, какой пакетный менеджер используется в вашей системе. Все действия выполняются в командной строке.
Для DEB пакетов (Ubuntu)
Для дистрибутивов, основанных на Ubuntu / Debian выполните в терминале следующую команду:
dpkg-query --show --showformat='${Installed-Size}\t${Package}\n' | sort -rh | head -30 | awk '{print $1/1024, $2}'
Данная команда выводит список, установленных в системе пакетов, и сортирует их по размеру, занимаемого места. Команда выводит 30 самых больших пакeтов. Чтобы вывести больше пакетов, то измените значение параметра head −30.
Вывод команды выглядит следующим образом. В первом столбце указан размер пакета в мегабайтах, в правом столбце название пакета.
260.991 nvidia-340
228.058 linux-firmware
182.982 franz
164.328 linux-modules-extra-4.15.0-33-generic
164.301 linux-modules-extra-4.15.0-29-generic
161.312 firefox
156.953 linux-image-extra-4.13.0-32-generic
154.283 simplenote
146.892 typora
146.758 libgl1-mesa-dri
135.2 libgl1-mesa-dri
120.19 fonts-noto-cjk
95.0605 openjdk-8-jre-headless
77.4531 snapd
73.5088 linux-headers-4.15.0-33
73.4658 linux-headers-4.15.0-29
68.7598 virtualbox
...
Для RPM пакетов
Для дистрибутивов, использующих RPM пакеты (CentOS, OpenSUSE, Fedora и другие), выполните следующую команду:
rpm -qa --queryformat '%10{size} - %-25{name} \t %{version} \t %{os} \n' | sort -rh | head -30 | awk '{print $1/1024/1024, $2, $3, $4}'
Для pacman (Arch Linux)
Для дистрибутивов, использующих пакетный менеджер pacman (это прежде всего ArchLinux и другие), выполните следующую команду:
pacman -Qi | awk '/^Name/{name=$3} /^Installed Size/{print $4$5, name}' | sort -hr | head -30
Если у вас русская локаль, то используйте команду:
pacman -Qi | awk '/^Название/{name=$3} /^Установленный размер/{print $4$5, name}' | sort -hr | head -30
Комментарии
10:45
history | grep (имя команды, программы или утилиты bash)
history | tail -10 20 50 (количество команд из файла .bash_history
12:49
Про history вот https://pingvinus.ru/note/command-line-history-access
13:20
16:58
awk: командная строка:1: {print /1024, }
awk: командная строка:1: ^ незавершенное регулярное выражение
awk: командная строка:1: {print /1024, }
awk: командная строка:1: ^ неожиданная новая строка или конец файла
padsel@padsel:~$
17:39
20:09
23:39