Dans l'article <fplhet$e38$1@news.tiscali.fr>,
Cornillet Pascal <p.cornillet@laposte.net> écrit:
Le problème est qu'un motif de remplacement doit contenir des guillemets
(simple ou double peu importe), or il semblerait que sous Mac OS les
guillemets à l'intérieur de la commande sed soient supprimées.
Nous avons essayé avec les commandes suivantes :
sed -e 's/pattern/"replacement"/g'
sed -e 's/pattern/'\''replacement'\''/g'
qui malheureusement sont interprétés sous mac comme :
sed -e 's/pattern/replacement/g'
Aucun problème ici, sous Mac OS X 10.4.11:
prunille:~> echo foo | /usr/bin/sed -e 's/o/"a"/g'
f"a""a"
PS: je ne sais pas s'il y a une interaction, mais la commande sed est à
l'intérieur d'un sous shell: `...`
Ah... c'est peut-être là qu'il y a un problème, genre une double
évaluation qui font disparaître un niveau de guillemets. Parfois
il faut mettre plusieurs backslashes à la suite pour s'en sortir
(et en plus, ça peut dépendre du shell). C'est une des horreurs
des shells...
--
Vincent Lefèvre <vincent@vinc17.org> - Web: <
http://www.vinc17.org/>
100% accessible validated (X)HTML - Blog: <
http://www.vinc17.org/blog/>
Work: CR INRIA - computer arithmetic / Arenaire project (LIP, ENS-Lyon)