Выполняя команду 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, только / и т. Д.Ни один из совпадений не совпадает с этим. Поэтому мои вопросы:
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 Этот счетчик где-то хранится? например в /var/cache/apt-xapian-inedx/- Майк
Самый близкий результат, который я мог получить, - это:
cat /var/lib/dpkg/info/*.list | sort | uniq | wc -l
Информация об установленных пакетах находится по адресу: /var/lib/dpkg/info/. Каждый пакет имеет файл pkg-name.list, который содержит список файлов, расположенных в этом пакете. мы можем подсчитать их номер строки.
Самый близкий результат, который я мог получить, - это:
cat /var/lib/dpkg/info/*.list | sort | uniq | wc -l
Информация об установленных пакетах находится по адресу: /var/lib/dpkg/info/. Каждый пакет имеет файл pkg-name.list, который содержит список файлов, расположенных в этом пакете. мы можем подсчитать их номер строки.