4 votes

Obtenir le chemin complet du script dans la variable d'environnement PATH

Je me demandais s'il existait une commande intégrée dans Bash (ou même quelque chose de spécifique à OSX) qui afficherait le chemin entièrement résolu d'un script qui se trouve dans le répertoire courant de PATH variable d'environnement.

Par exemple, mon PATH se présente actuellement comme suit :

>: echo $PATH | tr ":" "\n"
/usr/bin
/bin
/usr/sbin
/sbin
/usr/local/bin
/opt/X11/bin
/Users/Josh/Dropbox/Scripts/Bash
/Users/Josh/Dropbox/Tools/WinRAR/OSX

Et il y a un script dans Dropbox appelé get-azurelogs.sh . Ce chemin se trouve dans mon PATH pour des raisons de commodité, mais si je voulais afficher le chemin complet de ce script, en supposant que je ne sois pas sûr de son emplacement, existe-t-il un moyen simple d'afficher le chemin entièrement résolu au lieu de le tester dans chacun des répertoires ci-dessus ?

6voto

Matt G Points 176

Vous pouvez utiliser which . Extrait de la page de manuel :

L'utilitaire which prend une liste de noms de commandes et recherche dans le chemin d'accès chaque fichier exécutable qui serait lancé si ces commandes avaient été effectivement invoquées

4voto

Asmus Points 7195

Une bonne alternative à which est la fonction intégrée type . L'avantage est que type est également capable de gérer les alias et les fonctions bash.

2voto

njboot Points 8005
which -a [nameofexecutable]

IE :

Macbook-Pro:~ njboot$ which -a chmod 
/bin/chmod
Macbook-Pro:~ njboot$ which -a nusers
/Users/njboot/bin/nusers

LesApples.com

LesApples est une communauté de Apple où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres utilisateurs d'appareils Apple, poser vos propres questions ou résoudre celles des autres.

Powered by:

X