• [^] # Re: le langage est bash, donc le langage est bash

    Posté par (Mastodon) . En réponse au journal bake : scripter en bash à la « makefile ». Évalué à 3.

    je dis juste que si tu mets l'interpréteur devant le nom du script, qu'il ait un shebang ou pas, qu'il soit executable ou pas il sera executé par cet interpréteur.

    ~/src $ cat toto.py
    #!/usr/bin/env python
    print('Hello, World!')
    ~/src $ chmod +x toto.py
    ~/src $ ./toto.py
    Hello, World!
    ~/src $ /bin/sh toto.py
    toto.py: 3: Syntax error: word unexpected (expecting ")")
    

    Et c'est très bien comme cela!

    Je ne te dis pas ce que tu dois faire ni comment tu dois nommer tes fichiers persos sur ta machine :)

    Quand tu distribues des fichiers, c'est bien de s'assurer que ce qui est du bash (c'est pareil pour du zsh ou autre) soit documenté, et qu'utiliser l'extension .sh est selon moi une mauvaise pratique et devrait se limiter aux scripts de type bourne shell portables. Et c'est vrai que si on veut être bon citoyen numérique et distribuer une application portable et pas limitée à Linux, ça fait pas de mal de rester sur du posix, une norme c'est fait pour ça même si c'est limitant. Ce n'est pas compliqué d'installer bash mais c'est une dépendance supplémentaire à gérer pour un gain assez négligeable dans l'écriture d'un script la plupart du temps.