Bah c'est une mauvaise pratique, tu peux éventuellement le faire pour ton shell courant, mais de manière global (pour une utilisation dans un script) c'est pas une bonne idée.
Par exemple, si tu cré un fichier "test" exécutable dans ton home, et que tu exécute un script qui utilise la commande test, il va exec ton test a la place et potentiellement faire n’importe-quoi.
Ton commentaire semble montrer que tu n'a pas compris sa remarque. Il ne parle pas de mettre le répertoire courant dans son ${PATH}, mais un dossier particulier. C'est une technique très classique et très utilisée (avoir un ${HOME}/bin qui est ajouté dans ${PATH}).
Le problème que tu décris n'existe que si le dossier en question est ajouté en première position ce qui est rarement fait.
Et généralement on a pas besoin de commande retry, en dehors d'une utilisation pour téster/débuguer. Si t'as une commande qui peux échouer pour de bonne raison, elle doit très certainement avoir une option "retry", "timeout", "wait" ou quelque chose comme ça.
Tu considère comme général ta propre vision, mais elle n'est ni unique, ni une généralité. Une logique plus unix serait de laisser les nouvelles tentatives à la charge d'un autre outil. D'où l'existence de la commande timeout dans les coreutils.
[^] # Re: fonction
Posté par barmic 🦦 . En réponse au journal bout de code pour relancer une commande dans certaines conditions. Évalué à 3. Dernière modification le 26 avril 2020 à 13:16.
Ton commentaire semble montrer que tu n'a pas compris sa remarque. Il ne parle pas de mettre le répertoire courant dans son
${PATH}, mais un dossier particulier. C'est une technique très classique et très utilisée (avoir un${HOME}/binqui est ajouté dans${PATH}).Le problème que tu décris n'existe que si le dossier en question est ajouté en première position ce qui est rarement fait.
Tu considère comme général ta propre vision, mais elle n'est ni unique, ni une généralité. Une logique plus unix serait de laisser les nouvelles tentatives à la charge d'un autre outil. D'où l'existence de la commande
timeoutdans lescoreutils.https://linuxfr.org/users/barmic/journaux/y-en-a-marre-de-ce-gros-troll