Est-il savoir que la plupart shebang
implémentations soutiendront un seul paramètre, donc si vous avez quelque chose commeComment tromper shebang pour autoriser plusieurs paramètres?
#!/usr/bin/env some-tool-accepting-yaml param1 param2
... (yaml body)
Il va maintenant fonctionner comme prévu, car il appellera l'outil avec l'argument « param1 param2 » au lieu de le diviser en deux arguments.
Il semble que l'on workaround pratique est d'utiliser quelque chose comme:
#!/bin/sh
arbitrary_long_name==0 "exec" "/usr/bin/gawk" "--re-interval" "-f" "$0" "[email protected]"
Maintenant, cette approche rendrait le script basé sur YAML invalide en raison de la 2ème ligne, de sorte que la seule solution acceptable serait celui qui est aussi un commentaire, en commençant par "#" aussi.
Y at-il un moyen de contourner ce problème aussi?
qui est l'exécutable pour lancer est-il 'python'? parce qu'il y a aussi cette question connexe: https://stackoverflow.com/questions/17458528/why-does-this-snippet-with-a-shebang-bin-sh-and-exec-python-inside-4-single-q –
La solution de contournement que vous citez est awk, pas python. – rici
Êtes-vous intéressé par une solution de contournement pour YAML, ou une solution générale? Dans le premier cas, dites-nous quel exécutable devrait consommer le contenu du fichier. – randomir