¿Existe un comando de shell para generar la ruta absoluta para el programa especificado? Me gustaría saber dónde está el archivo binario ejecutable.
command-line
DrStrangeLove
fuente
fuente

which, por favor.El comando
le dará toda la información sobre
name, si es ejecutable (devolviendo también la ruta), alias de shell, función de shell, shell incorporado.fuente
type -Ppara buscar específicamente binarioswhereis -b yourBinarygenerará la ubicación de un programa.fuente
Todo lo anterior, con algunas advertencias:
whereis: busca coincidencias (de forma predeterminada) en algunos directorios preestablecidos. La lista está disponible en 'man whereis', y se puede pasar como parámetro
which: busca archivos ejecutables en el entorno actual (en otras palabras, ejecutables que se pueden encontrar en los directorios enumerados en la variable de entorno PATH
(bash) type: si 'name' es un alias, enumera la definición de alias, pero no necesariamente la ruta de los ejecutables en la definición.
Otra opción, más genérica, es mlocate .
fuente
type -PSiempre realiza unaPATHbúsqueda,mlocatevolvería muchos resultados no relacionados (no relacionada con lo que pidió OP: "ruta absoluta para el programa especificado")typeno es bash; es POSIX: pubs.opengroup.org/onlinepubs/009604499/utilities/type.html . Debería estar disponible en todos los shells compatibles con POSIX.