J'ai un fichier dans $ HOME / bin (avant de demander, oui, il se trouve dans mon chemin) appelé test
et j'ai confirmé qu'il peut être exécuté correctement lorsque je l'exécute avec le chemin d'accès complet au fichier. Cependant, j'ai un problème vraiment bizarre quand je ne le fais pas de cette façon. Quand je viens de courir test
dans le terminal, il ne fait rien et revient immédiatement. Je sais que ce n'est pas un problème de trouver le fichier pour plusieurs raisons:
Il n'y a aucun message d'erreur. Normalement, si le fichier est introuvable ou ne peut pas être exécuté, un message sera imprimé pour le dire.
L'exécution
which test
renvoie toujours le chemin de fichier correct.Probablement le plus étrange de tous - le script fonctionne bien lorsqu'il est exécuté
strace
. J'ai essayé d'utiliserstrace
pour voir si je pouvais comprendre ce qui se passait, mais lorsque je l'ai exécutéstrace
, cela a fonctionné comme prévu avec 0 problème.
type
paswhich
. Voir Pourquoi ne pas utiliser «lequel»? Que faut-il utiliser alors?