55 votes

Détecter si le fichier exécutable est sur le PATH de l'utilisateur

Dans un script bash, je dois déterminer si un exécutable nommé foo trouve sur le PATH.

54voto

trevor Points 477

Vous pouvez également utiliser la fonction intégrée Bash type -P :

 help type

cmd=ls
[[ $(type -P "$cmd") ]] && echo "$cmd is in PATH"  || 
    { echo "$cmd is NOT in PATH" 1>&2; exit 1; }

43voto

Michael Aaron Safyan Points 45071

Vous pouvez utiliser which :

  path_to_executable=$(which name_of_executable)
 if [ -x "$path_to_executable" ] ; then
    echo "It's here: $path_to_executable"
 fi

1voto

asev69 Points 41

si commande -v foo ; puis foo ; else echo "toto indisponible" ; Fi

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X