Los comandos which, whereis y whatis pueden sonar similares a un recién llegado a Linux, pero son más diferentes de lo que podría pensar.

Es posible que haya utilizado los comandos which, whereis y whatis en Linux varias veces. Los tres comandos lo ayudan a encontrar información sobre otros comandos de Linux. Estos comandos parecen similares, pero tienen algunas diferencias.

Aquí hay una comparación detallada de los comandos which, whereis y whatis en Linux.

El cual Comando

Algunos comandos tienen varios ejecutables binarios ubicados en diferentes directorios. Cuando ejecuta un comando, el shell busca sus ejecutables en los directorios especificados en la variable de entorno PATH.

Para averiguar qué directorios hay en la variable de entorno PATH, abrir la terminal en Linux y ejecuta el siguiente comando:

echo $RUTA

También puede manualmente agregue un directorio a su variable de entorno PATH.

Cuando el shell encuentra la primera ruta ejecutable, la ejecuta. Usando el comando which en Linux, puede identificar la ruta de ese ejecutable.

instagram viewer

Esto es útil en escenarios donde tiene dos versiones diferentes del mismo programa o dos programas diferentes con el mismo nombre instalados en su sistema. Usando el comando which, puede encontrar cuál se ejecutará primero.

Esta es la sintaxis del comando which:

cual [opción] [comando]

Por ejemplo, para comprobar la ruta real del alquitrán comando, escribiría:

que alquitrán

Este comando mostrará la primera ruta ejecutable, es decir, /usr/bin encontrado para el comando tar en la RUTA. Esto significa que cada vez que ejecuta el comando tar, el shell ejecuta el archivo binario ubicado en el /usr/bin directorio.

Para mostrar todas las rutas ejecutables disponibles para un comando, use el comando which con el -a opción:

que -un alquitrán

También puede mostrar rutas ejecutables para varios comandos a la vez de esta manera:

cual [comando1] [comando2] [comando3]

El comando donde está

El comando whereis muestra la ruta de los archivos binarios, fuente y de páginas de manual asociados con el comando especificado. A diferencia del comando which, no solo busca el ejecutable en $PATH sino también en $MANPATH y otras ubicaciones predefinidas.

Sin ninguna opción de línea de comandos, el comando whereis muestra los archivos de página binarios, fuente y manual para un comando:

donde esta el alquitrán

Para mostrar solo la ruta del archivo binario, use el -b opción:

donde está -b alquitrán

Para mostrar sólo el archivo de origen, utilice el -s bandera:

donde esta -s alquitrán

Para mostrar sólo la página del manual, utilice el -metro opción:

donde está -m alquitrán

El Comando Whatis

El comando whatis proporciona una descripción de una línea de un comando de Linux dado. Encuentra esta información en la página de manual del comando.

Por ejemplo, para encontrar lo que hace el comando tar, ejecute:

¿Qué es el alquitrán?

También puede encontrar información sobre múltiples comandos simultáneamente usando:

qué es ls cp mkdir cabeza de gato

cual contra donde esta vs whatis: ¿Cuáles son las diferencias?

Si está buscando la ruta del binario que se ejecuta cuando se ejecuta un comando en el shell, use el comando which. Mientras que, si está buscando las páginas fuente, binaria y man para un comando, use whereis.

El comando whereis enumera todos los ejecutables binarios, mientras que el comando which solo muestra el primer ejecutable que se ejecuta cuando escribe dicho comando en el shell.

El comando which realiza búsquedas en la variable PATH mientras que el comando whereis busca directorios estándar de Linux, incluidos $PATH y $MANPATH.

Finalmente, el comando whatis simplemente muestra una descripción de una línea de un comando.

Búsqueda de información sobre los comandos de Linux

Los comandos which, whereis y whatis lo ayudan a encontrar información sobre otros comandos de Linux, como la ruta completa de ejecutables, binario, fuente, páginas de manual y la funcionalidad de un comando.

Junto con whatis, puede usar otros comandos como apropos, man, info y help para obtener información detallada y una mejor comprensión de los comandos de Linux y sus funciones.