Hace un tiempo, aprendimos cómo encontrar una versión de paquete en Linux . Hoy veremos cómo saber si un paquete está instalado o no en los sistemas operativos Linux y Unix. Encontrar paquetes instalados en modo GUI es fácil. Todo lo que tenemos que hacer es simplemente abrir el menú o el tablero e ingresar el nombre del paquete en el cuadro de búsqueda. Si el paquete está instalado, verá la entrada del menú. Es tan simple como eso. Pero, es un poco difícil encontrarlo en un sistema donde no tiene modo GUI. Por lo tanto, saber cómo saber si un paquete está instalado o no en el modo CLI es tan importante como lo sabemos en el modo GUI. Ahora, averigüemos cómo podemos encontrar si un paquete está instalado o no, ¿de acuerdo?
Buscar si un paquete está instalado o no en Linux
La forma más común de encontrar si un paquete está instalado o no es usar el comando "cuál" como se muestra a continuación:
$ which <package-name>
Ejemplo:
$ which nano
Si el paquete nano está instalado, mostrará la ruta de instalación como se muestra a continuación.
/usr/bin/nano
Como puede ver, el paquete nano está instalado en /usr/bin/ camino.
Revisemos otro paquete, por ejemplo Emacs:
$ which emacs /usr/bin/which: no emacs in (/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin)
¿Ver? Emacs no está instalado.
Averigüe si un paquete está instalado o no en Linux usando qué comando
El comando "cuál" está disponible de forma predeterminada en la mayoría de los sistemas operativos similares a Unix.
Además, hay algunas otras formas específicas de distribución para saber si un paquete está instalado o no. Sigue leyendo.
En Arch Linux:
En Arch Linux y sus derivados como Antergos y Manjaro LInux, podemos hacer esto usando el comando "pacman" como se muestra a continuación:
$ pacman -Qs nano
Salida de muestra:
local/nano 2.9.3-1 (base) Pico editor clone with enhancements
Encuentra si un paquete está instalado o no en Arch Linux usando Pacman
¿Notaste el prefijo "local" delante del paquete "nano"? Significa que Nano está instalado en su sistema.
Si el comando anterior no devuelve nada, significa que el paquete dado no está instalado.
Leer también - Primeros pasos con PacmanEn Fedora/RHEL/CentOS/Scientific Linux:
En distribuciones de Linux basadas en RPM como Fedora, RHEL y clones de RHEL como CentOS, Scientific Linux, podemos averiguar si un paquete está instalado usando "rpm" comando como se muestra a continuación.
$ rpm -qa | grep nano
O,
$ rpm -qa | grep -i nano
Salida de muestra:
nano-2.3.1-10.el7.x86_64
Además, puedes usar Yum comando como a continuación.
$ yum list installed|grep 'nano'
Para enumerar todos los paquetes instalados, ejecute:
$ rpm -qa
Como uno de nuestros lectores "Gregory Pittman" mencionado en la sección de comentarios a continuación, podemos usar dnf comando en Fedora para encontrar el paquete instalado.
$ dnf list packagename
o incluso
$ dnf list package*
Lo que obtiene de estos es una lista de lo que está instalado y también lo que está disponible en los repositorios. dnf permite un comodín y tampoco distinguirá entre mayúsculas y minúsculas en su búsqueda. A veces no sabes muy bien lo que estás buscando o la ortografía correcta.
En Debian/Ubuntu/Linux Mint:
En sistemas basados en DEB como Debian, Ubuntu y sus derivados como Linux Mint y Elementary OS, podemos hacer esto usando "dpkg" comando.
$ dpkg -s nano
Salida de muestra:
Averigüe si un paquete está instalado o no en Debian, Ubuntu Linux Usando el comando dpkg
Como puede ver en el resultado anterior, el paquete nano está instalado en nuestro sistema Ubuntu. Este comando no solo muestra si el paquete especificado está instalado o no, sino también la prioridad del paquete, el número de versión, el nombre del mantenedor, las dependencias y su descripción, etc.
Esta no es la única manera de encontrar los paquetes instalados. Aquí hay algunos comandos más.
$ dpkg-query -l nano
Salida de muestra:
Desired=Unknown/Install/Remove/Purge/Hold | Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend |/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad) ||/ Name Version Architecture Description +++-==============-============-============-================================= ii nano 2.5.3-2 amd64 small, friendly text editor inspired by Pico
Aquí hay otro.
$ dpkg --get-selections | grep nano
Salida de muestra:
nano install
Y un comando más....
$ dpkg --list | grep nano
Salida de muestra:
ii nano 2.5.3-2 amd64 small, friendly text editor inspired by Pico
O, use este comando:
$ dpkg --list | grep -i nano
Para ver la lista de todos los paquetes instalados, ejecute:
$ dpkg --list
En SUSE/openSUSE:
Para verificar si un paquete está instalado o no en SUSE y openSUSE, ejecute:
$ zypper search nano
O, en breve:
$ zypper se nano
También puede usar el comando "rpm" como se muestra a continuación.
$ rpm -q nano
Encuentre si un paquete está instalado o no usando la utilidad "has"
Confía en mí, ¡esto es súper fácil! El "tiene" La utilidad verificará la presencia de varias herramientas de línea de comandos en la ruta y también informará sobre su versión instalada.
Para instalarlo ejecuta los siguientes comandos:
$ git clone https://github.com/kdabir/has.git $ cd has $ sudo make install
Ahora compruebe si un paquete está disponible o no, como se muestra a continuación.
$ has nano ✔ nano 2.5.3
Si ve la marca de verificación (✔), el paquete está instalado. Como puede ver en el resultado anterior, el paquete nano está instalado y su versión es 2.5.3.
Verá la marca de la cruz si el paquete no está instalado. Compruebe el siguiente ejemplo.
$ has emacs ✘ emacs
También puede buscar varios paquetes.
$ has nano emacs vim ✔ nano 2.5.3 ✘ emacs ✔ vim 7.4
Si no desea instalarlo, puede usarlo directamente como se muestra a continuación. Sin embargo, su sistema debe estar conectado a Internet.
$ curl -sL https://git.io/_has | bash -s nano
Para comprobar si hay varios paquetes:
$ curl -sL https://git.io/_has | bash -s nano emacs vim
Crea un alias si eres demasiado perezoso para escribir el comando completo:
$ alias has="curl -sL https://git.io/_has | bash -s"
Ahora, solo use esta utilidad como se muestra a continuación:
$ has nano
Para obtener más detalles, consulte la página de GitHub del proyecto.
- tiene repositorio de GitHub
Buscar si un paquete está instalado o no en Unix
Los siguientes pasos se probaron en FreeBSD 10.3. Nunca probé ningún otro sistema operativo BSD excepto FreeBSD. Por lo tanto, puede haber diferentes comandos para averiguar si un paquete está instalado en otros sistemas operativos BSD.
En FreeBSD, podemos hacer esto usando "pkg" comando:
$ pkg_info -Ix <package-name>
Ejemplo:
$ pkg info -Ix nano
Salida de muestra:
Averigüe si un paquete está instalado o no en FreeBSD usando el comando pkg
Para ver todos los paquetes instalados, puede usar el siguiente comando:
$ pkg info
O,
$ pkg version -v
Esto tomará de unos segundos a un minuto dependiendo de la cantidad de paquetes que tenga en su sistema FreeBSD.
Conclusión
Ahora sabe cómo encontrar si un paquete está instalado o no usando la forma oficial y no oficial desde la línea de comandos. Como puedes ver, no es tan difícil. Son solo un par de comandos que puedes recordar fácilmente. Si no puede recordar estos comandos, simplemente márquelos o guárdalos en la Terminal para ejecutarse bajo demanda.