Cómo mostrar la cantidad de paquetes instalados

Respuestas:

11

De acuerdo con este hilo :

Para enumerar los paquetes instalados:

dpkg --list | wc --lines

Para ver si hay un paquete instalado:

dpkg --list | grep package
Justin Ethier
fuente
1
Usted incluye las líneas de encabezado y algunos paquetes no instalados (por ejemplo rc(desinstalados pero con archivos de configuración sobrantes)) en su recuento.
Gilles 'SO- deja de ser malvado'
6
dpkg -l | grep -c '^ii'

Existen variantes sutiles como dpkg -l | grep -c '^?i'si desea incluir paquetes que están instalados pero cuya eliminación ha solicitado. Otra forma es

aptitude search '~i' |wc -l

Incluso puede meter directamente en la base de datos dpkg:

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

Este incluye paquetes que no están instalados pero que tienen archivos de configuración sobrantes; puedes enumerarlos con dpkg -l | grep '^rc'.

Gilles 'SO- deja de ser malvado'
fuente
1

dpkg -les agradable, pero en realidad me encuentro usando apt-show-versions(no instalado de forma predeterminada en Debian; instale el paquete del mismo nombre) mucho en su lugar, especialmente cuando quiero procesar más la salida (dpkg intenta ser demasiado inteligente con el ajuste de línea).

Timday
fuente
1

Synaptic , un administrador de paquetes GUI, muestra el recuento en la parte inferior de su ventana principal.

ingrese la descripción de la imagen aquí

tshepang
fuente
0

Si desea un recuento exacto de paquetes, no debe contar las líneas de encabezado de salida dpkg-query -l, por lo que necesita un patrón para que coincida con las líneas que comienzan con ii. La siguiente línea le brinda la cantidad de líneas que comienzan iiy, por lo tanto, la cantidad de paquetes instalados:

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

Esto da el mismo resultado que

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

El patrón grep en el segundo comando ignora las líneas que contienen la cadena "desinstalar" en la salida de dpkg --get-selections.

Tsundoku
fuente
-1

Por ejemplo, puedes hacer esto:

dpkg-query -l | nl | tail -1 | awk '{print $1}'
Karim Manaouil
fuente
OK, es cierto que nl | tail -1 | awk '{print $1}'informará el número de líneas en su entrada (excepto, si no hay entrada, no dirá nada en lugar de informar 0), pero ¿por qué recomendaría tal error cuando otras respuestas ya están usando wc -l?
G-Man dice 'Restablecer a Monica' el
¡Eso es gracioso porque no leí las respuestas anteriores! @ G-Man ... pero esto sigue siendo una buena respuesta.
Karim Manaouil