Comment faire pour utiliser plusieurs arguments pour awk avec un shebang (c #!)?

J'aimerais exécuter une gawk script avec --re-interval à l'aide d'une arborescence. Le "naïf" approche de

#!/usr/bin/gawk --re-interval -f
... awk script goes here

ne fonctionne pas, puisque gawk est appelée avec le premier argument "--re-interval -f" (pas répartis autour de l'espace), dont il ne comprend pas. Est-il une solution pour que?

Bien sûr, vous pouvez soit pas appel gawk directement, mais l'envelopper dans un script shell qui divise le premier argument, ou faire un script shell qui appelle ensuite à s'émerveiller et de mettre le script dans un autre fichier, mais je me demandais si il y avait moyen de faire cela dans un seul fichier.

Le comportement de shebang lignes diffère d'un système à l'autre - au moins dans Cygwin il ne se fend pas les arguments par des espaces. Je viens de soins sur la façon de le faire sur un système qui se comporte comme ça; le script n'est pas destiné à être portables.

  • Un idiot d'expérimenter ce que j'ai fait était avec un script à l'aide d'un autre script sur la ligne shebang, qui a divisé les arguments correctement.
  • cela soulève une autre question, que le comportement de shebang lignes diffère également d'un système à l'wrt si le programme appelé lui-même peut être un script.
  • stackoverflow.com/questions/17458528/why-does-this-snippet-work
  • Avec les versions récentes de gawk (>= 4.0), --re-interval n'est plus nécessaire (voir [gnu.org/software/gawk/manual/...).