Utrzymuję listę pakietów zainstalowanych w moim systemie (za pomocą apt-get
). Chciałbym wiedzieć, ile miejsca zajmują te pakiety wraz z ich zależnościami, jeśli to możliwe.
Czy mogę użyć do tego jakiegoś narzędzia, czy też muszę napisać własny skrypt, który podsumowałby wszystkie odpowiednie pliki (pliki binarne, biblioteki dynamiczne itp.)?
apt
package-management
disk-usage
syntagma
źródło
źródło
Odpowiedzi:
Możesz wypróbować ten
bash
skrypt:Przekaż nazwę pakietu jako pierwszy argument, np
bash script.sh nano
.dpkg -L package
wyświetli listę wszystkich zainstalowanych plikówpackage
, zapisaliśmy listę jako tablicę. Będzie on zawierał także katalogi nadrzędne, aby pozbyć się katalogów, które przeprowadziliśmy test[ -f "$file" ]
, więc jeśli element tablicy jest zwykłym plikiem, wówczas uzyskamy rozmiar pliku na dysku wedługdu -h
.Oto wynik testu:
źródło
Nie mogłem się oprzeć rozszerzeniu, całkowicie opartemu na koncepcji heemayla, aby stworzyć skrypt z dwiema opcjami:
Wyprowadzaj tylko (całkowity) rozmiar zainstalowanego pakietu (ale bez jego zależności, ponieważ zależności są praktycznie zawsze współużytkowane, więc który pakiet powinien mieć go na swoim „koncie”?)
przykład:
lub:
Jak używać
check_size
w~/bin
(lub gdzie indziej w $ PATH), bez rozszerzenia języka.~/bin
, uruchomsource .profile
lub wyloguj się / zaloguj.Uruchom go za pomocą polecenia:
tylko dla rozmiaru lub:
dla pełnych informacji
Scenariusz
źródło