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

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'.


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).


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í



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.


-1

Por ejemplo, puedes hacer esto:

dpkg-query -l | nl | tail -1 | awk '{print $1}'

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
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.