So zeigen Sie die Anzahl der installierten Pakete an

8

Was ist das Debian-Äquivalent von Fedora yum list installed | grep wc --lines?

Tshepang
quelle

Antworten:

11

Nach diesem Thread :

So listen Sie installierte Pakete auf:

dpkg --list | wc --lines

So sehen Sie, ob ein Paket installiert ist:

dpkg --list | grep package
Justin Ethier
quelle
1
Sie nehmen die Kopfzeilen und einige nicht installierte Pakete (z. B. rc(deinstalliert, aber mit verbleibenden Konfigurationsdateien)) in Ihre Zählung auf.
Gilles 'SO - hör auf böse zu sein'
6
dpkg -l | grep -c '^ii'

Es gibt subtile Varianten, z. B. dpkg -l | grep -c '^?i'wenn Sie Pakete einschließen möchten, die installiert sind, deren Entfernung Sie jedoch angefordert haben. Ein anderer Weg ist

aptitude search '~i' |wc -l

Sie können sogar direkt in die dpkg-Datenbank stöbern:

sh -c 'set /var/lib/dpkg/info/*; echo $#'

Dieses enthält Pakete, die nicht installiert sind, aber noch Konfigurationsdateien enthalten. Sie können diese mit auflisten dpkg -l | grep '^rc'.

Gilles 'SO - hör auf böse zu sein'
quelle
1

dpkg -list nett, aber ich benutze tatsächlich apt-show-versionsviel (nicht standardmäßig auf Debian installiert; installiere das gleichnamige Paket) stattdessen viel, besonders wenn ich die Ausgabe weiter verarbeiten möchte (dpkg versucht, mit Zeilenumbruch zu klug zu sein).

timday
quelle
1

Synaptic , ein GUI-Paketmanager, zeigt die Anzahl am unteren Rand des Hauptfensters an.

Geben Sie hier die Bildbeschreibung ein

Tshepang
quelle
0

Wenn Sie eine genaue Anzahl von Paketen wünschen, sollten Sie die ausgegebenen Kopfzeilen nicht zählen dpkg-query -l, daher benötigen Sie ein Muster, das mit den Zeilen beginnt, mit denen begonnen wird ii. Der folgende Einzeiler gibt Ihnen die Anzahl der Zeilen beginnend mit iiund damit die Anzahl der installierten Pakete an:

dpkg-query -l | grep "^ii" | wc -l 

Dies ergibt die gleiche Ausgabe wie

 dpkg --get-selections | grep "[[:space:]]install" | wc -l

Das grep-Muster im zweiten Befehl ignoriert Zeilen, die die Zeichenfolge "deinstall" in der Ausgabe von enthalten dpkg --get-selections.

Tsundoku
quelle
-1

Zum Beispiel können Sie dies tun:

dpkg-query -l | nl | tail -1 | awk '{print $1}'
Karim Manaouil
quelle
OK, es ist wahr, dass nl | tail -1 | awk '{print $1}'die Anzahl der Zeilen in seiner Eingabe gemeldet wird (außer wenn keine Eingabe vorhanden ist, wird nichts gesagt, anstatt zu melden 0) - aber warum würden Sie einen solchen Kludge empfehlen, wenn andere Antworten bereits verwendet werden wc -l?
G-Man sagt "Reinstate Monica"
Das ist lustig, weil ich keine vorherigen Antworten gelesen habe! @ G-Man ... aber das bleibt immer noch eine gute Antwort.
Karim Manaouil