Le 07/12/15 à 16:16, Marc Chantreux <khatar@phear.org> a écrit : MC> On Mon, Dec 07, 2015 at 03:32:32PM +0100, Daniel Caillibaud wrote: MC> > Mais je ne veux pas quoter tous les arguments, juste récupérer les quotes telles qu'elles MC> > étaient dans la ligne de commande initiale, car si je récupère bien un seul MC> > argument (sans les quotes) MC> > --rsh=/usr/bin/ssh -i /path/to/id_rsa MC> > le passer à rsync avec MC> > rsync "--rsh=/usr/bin/ssh -i /path/to/id_rsa" MC> > ne va pas donner l'effet escompté MC> MC> ... MC> MC> pourquoi ca ? les quotes ne sont la que pour délimiter une zone ou tu MC> n'as pas besoin de proteger individuellement les chars (il faut se MC> rappeller que l'expansion est faite *avant* execution) Tu as raison, j'ai encore écrit une ânerie. MC> donc pour ton shell, toutes ces chaines sont identiques: MC> MC> --rsh='/usr/bin/ssh -i /path/to/id_rsa' MC> '--rsh=/usr/bin/ssh -i /path/to/id_rsa' MC> --rsh=/usr/bin/ssh' -i /path/to/id_rsa' MC> --rsh=/usr/bin/ssh\ -i '/path/to/id_rsa' MC> MC> du coup je suis pas sur de comprendre ta question: Je me demandais juste si y'avait un ${truc} pour récupérer la commande complète "telle quelle", éventuellement avec un autre shell que bash. MC> pourrais-tu tenter d'écrire un cas simple d'un truc qui foire a tes MC> yeux? (si tu utilisais uze, je te proposerais bien d'écrire un test...) J'essayais justement de formuler la question pour sortir de mon petit problème ponctuel. La question n'était pas tant de le résoudre que d'apprendre un truc sur le shell, qui est davantage l'objet de la liste ;-) Mais puisque tu insiste, voici le cas qui foire et m'amènenait à la question : (dans benice.sh, qui a des alias en symlinks benice_cp, benice_rm, benice_rsync, …) me=$(basename $0) [ "$me" == "benice.sh" ] && commande="$@" || commande="${me#*benice_} $@" $commande && … mais si je le réécris avec [ "$me" == "benice.sh" ] && commande="" || commande="${me#*benice_}" $commande $@ && … ça devrait régler ce problème. -- Daniel Apprendre a mourir ! Et pourquoi donc ? On y réussit très bien la première fois ! Chamfort