J'essaye d'écrire une fonction en bash qui accédera aux arguments de ligne de commande de scripts, mais ils sont remplacés par les arguments positionnels de la fonction. Existe-t-il un moyen pour la fonction d'accéder aux arguments de ligne de commande s'ils ne sont pas passés explicitement?
# Demo function
function stuff {
echo $0 $*
}
# Echo's the name of the script, but no command line arguments
stuff
# Echo's everything I want, but trying to avoid
stuff $*
$*
est extrêmement bogué - il va changer ./yourScript "first argument" "second argument"
à ./yourscript "first" "argument" "second" "argument"
, ou un changement ./yourscript '*.txt'
à quelque chose comme ./yourscript one.txt two.txt
malgré les citations.