Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

ligne shebang et options

4 réponses
Avatar
Manuel Pégourié-Gonnard
Bonjour,

Est-il possible de placer des options sur une ligne de "shebang" ou bien
cela expose-t-il à des problèmes dans certains cas ?

Par exemple, vaut-il mieux écrire

#!/bin/sh -eu

ou

#!/bin/sh
set -eu

Merci d'avance !

--
Manuel Pégourié-Gonnard Institut de mathématiques de Jussieu
http://weblog.elzevir.fr/ http://people.math.jussieu.fr/~mpg/

4 réponses

Avatar
Damien Wyart
Salut,

Est-il possible de placer des options sur une ligne de "shebang" ou bien
cela expose-t-il à des problèmes dans certains cas ?



Normalement on peut mettre des options sur cette ligne mais avec
l'astuce /usr/bin/env ça ne fonctionne pas. Avec Linux c'est plutôt
homogène mais sur d'autres Unix, il peut y avoir des comportements
différents.


Un peu de lecture :

http://en.wikipedia.org/wiki/Shebang_%28Unix%29
http://homepages.cwi.nl/~aeb/std/shebang/
http://mail.python.org/pipermail/tutor/2004-April/029495.html

--
DW
Avatar
Nicolas George
Damien Wyart wrote in message <4af2d68b$0$31156$:
Normalement on peut mettre des options sur cette ligne mais avec
l'astuce /usr/bin/env ça ne fonctionne pas.



Plus exactement, le comportement le plus courant est de couper une seule
fois, au premier espace. Donc :

#!/usr/bin/env foo -bar -baz

invoque la commande /usr/bin/env avec exactement deux arguments
supplémentaires, « foo -bar -baz » et le nom du fichier, alors qu'on
s'attendait qu'il y ait quatre arguments, « foo », « -bar », « -baz » et le
nom du fichier.
Avatar
Cyrille Lefevre
Manuel Pégourié-Gonnard a écrit :

Est-il possible de placer des options sur une ligne de "shebang" ou bie n
cela expose-t-il à des problèmes dans certains cas ?


>

Bonjour,

google shebang
http://en.wikipedia.org/wiki/Shebang_(Unix)
mais surtout http://www.in-ulm.de/~mascheck/various/shebang/
qui est très bien ainsi que tout les autres sujets abordés.

Cordialement,

Cyrille Lefevre.
--
mailto:Cyrille.Lefevre-news%
supprimer "%nospam% et ".invalid" pour me repondre.
Avatar
Manuel Pégourié-Gonnard
Cyrille Lefevre scripsit :

google shebang
http://en.wikipedia.org/wiki/Shebang_(Unix)



J'avais vu, et ça mentionne le problème du découpage des arguments, mais
ça ne dit pas explicitement si les arguments sont toujours autorisés.

mais surtout http://www.in-ulm.de/~mascheck/various/shebang/
qui est très bien ainsi que tout les autres sujets abordés.



Merci. Pour résumer,

#!/path/to/interpreter
#!/path/to/interpreter arg1

fonctionnent toujours, et tout le reste peut merdouiller dans certains
cas, si j'ai bien compris.

--
Manuel Pégourié-Gonnard Institut de mathématiques de Jussieu
http://weblog.elzevir.fr/ http://people.math.jussieu.fr/~mpg/