[technique] Des espaces dans les arguments d'un script

[ Thread Index | Date Index | More alpinux.org/technique Archives ]


Salut à tous,

J'ai un script qui traite les arguments qu'on lui donne sur la ligne de
commande. Ceux-ci peuvent être contenir des espaces. Dans le shell, ça
marche bien:

$ ./script.sh "ab" "cd ef"
2 args:
ab
cd ef

Le truc c'est que les arguments sont nombreux et je voudrais les stocker
dans un fichier et les envoyer au script. Évidemment, ça ne marche pas à
cause des espaces :

$ cat fic
ab
cd ef
$ ./script $(cat fic)
3 args:
ab
cd
ef

J'ai aussi vu un contournement avec un read:

$ while read line; do ./script "$line"; done < fic
1 args:
ab
1 args:
cd ef

mais je voudrais tous les arguments dans le même processus, pas sur des
appels différents.

Je précise aussi que je ne peux pas modifier le comportement du script

Quelqu'un a-t-il une idée ?

Vincent



Mail converted by MHonArc 2.6.19+ http://listengine.tuxfamily.org/