4 votos

Cuando se ejecuta un comando desde la terminal, ¿cómo puedo saber la ruta completa del comando?

Asumiendo que estoy escribiendo en la Terminal: "ctags", ¿cómo puedo saber la ruta completa del comando "ctags"?

6voto

$ type ctags
ctags is /usr/bin/ctags
$ type -p ctags
/usr/bin/ctags

La segunda forma es útil para hacer cosas como

$ file $(type -p ctags)
$ ls -l $(type -p ctags) 

y a menudo se le da el nombre de which .


Si no quieres depender de bash y prefieren un comando externo, /usr/bin/whereis sirve un propósito similar:

La utilidad "whereis" comprueba los directorios binarios estándar de los programas especificados, imprimiendo las rutas de cualquiera que encuentre.

Porque whereis no usa $PATH sino más bien el resultado de sysctl user.cs_path puede conducir a resultados diferentes.

0 votos

¿Estás seguro de que está aliasado a which ? Además, ¿sabe usted whereis ? Es interesante porque en mi caso whereis ctags da un resultado diferente al de which ctags .

0 votos

Hmm, cierto, el alias no está configurado por defecto. type es un comando interno de bash, /usr/bin/whereis es un comando externo. Pero yo esperaría que dieran el mismo resultado.

2voto

marbot Puntos 39

Escriba el comando como un parámetro, para, por ejemplo, encontrar la ubicación de tar

ls -l $(which tar)

que en mi caso, regresa

lrwxr-xr-x  1 root  wheel  6 Jul 26  2012 /usr/bin/tar -> bsdtar

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X