При выполнении команды apt (install|remove|update)
, первая строка всегда (Reading database ... 266505 files and directories currently installed.)
Мне было любопытно знать, какая команда на самом деле вызывает этот подсчет? Попытки, которые я предпринял до сих пор:
cnt=0;for pkg in $(apt list --installed | tail -n +4 | cut -d '/' -f 1);do cnt=$(($cnt+$(dpkg --listfiles $pkg | wc -l)-1));done
find /usr/ \( -type f -or -type d \) | wc -l
Конечно, путем варьирования пути к /usr
и /etc
, только /
, и так далее.Ни один из подсчета не соответствует этому. Таким образом, мои вопросы:
/var/cache/apt-xapian-inedx/
- Mike
Ближайший результат, который я мог бы получить, это использовать:
cat /var/lib/dpkg/info/*.list | sort | uniq | wc -l
Информация об установленных пакетах находится по адресу: /var/lib/dpkg/info/
. Каждый пакет имеет файл pkg-name.list
, который содержит список файлов, находящихся в этом пакете. мы можем посчитать их номер строки.