He estado probando una instalación mínima de Fedora. Para verificar la ruta de intérpretes como python o node, normalmente uso which.
Noto whichque no está instalado por defecto. Podría agregar el paquete, pero me pregunto si hay un shell incorporado que se pueda usar para realizar esta tarea común.
Estoy usando bash 4.2.

which. ¿Por qué no usar "which"? ¿Qué usar entonces?Respuestas:
Puede usar
type, que es un Bash incorporado:Para obtener documentación, consulte
help [t]ype, que se refiere a latypesección en labashpágina del manual.(
help typeimprime las páginas de ayuda para dos incorporaciones que comienzan con la cadena "tipo", una de las cuales es obsoleta y no tiene ninguna relación con esto).fuente
type -aa mí mismo. ¿Por qué los corchetes[t]ype?type -aimprimirá todas las cosas a las que apunta el argumento, y no solo lo que se ejecutará al escribirlo.which. ¿Por qué no usar "which"? ¿Qué usar entonces?type -aes siempre lo que se ejecutaría. Hago lo mismo que Glenn y siempre usotype -atambién.type -pno muestra la ruta si el comando es un alias.type -Psiempre muestra la ruta de comando correctamente. Yo creo que. debemos actualizar la respuesta aceptada comotype -P@ l0b0Puedes usar
typeocommand -v. La salida detypees legible por humanos; la salida decommand -vpuede ser ejecutada por Bash.Tenga en cuenta que en realidad son un poco diferentes.
typeycommandbusque el valor hash del comando. Es decir, si escribecmd,type cmdocommand -v cmdle dirá exactamente lo que va a ser ejecutado. También funcionan en alias, funciones de Bash y componentes incorporados de Bash (aunquetype -plos ignorará y solo devolverán archivos verdaderos).whichsolo hace una búsqueda en la RUTA. Esto es diferente porque:which, pero al ejecutar ese comando se usará el valor hash (puede forzar la actualización del hash en Bash conhash -r).Por lo general, la gente realmente quiere
type, nowhich, al menos para uso interactivo, ya que lo usan para averiguar "¿de dónde viene este comando cuando lo ejecuto?" Solo debe usarlowhichsi realmente desea hacer una búsqueda de RUTA.fuente
command -ves el equivalente dekshwhence.where,whencey por supuesto tambiénwho,whyywhen? ¿Por qué no haywhat?echo 'main(){printf("what\n");}' | sudo cc -x c - -o /usr/local/bin/what