|
|
|
|
Bonjour,
j'ai le fichier suivant qui contient :
email ---------------------------------------------------- 33@mail.fr trmc@exemple.fr etc..
INSERT INTO mybd (act,mail) VALUES(1,'33@mail.fr'); INSERT INTO simplenews_snid_tid (snid,tid) VALUES(LAST_INSERT_ID(),507); INSERT INTO simplenews_subscriptions (activated,mail) VALUES(1,'trmc@exemple.fr'); INSERT INTO simplenews_snid_tid (snid,tid) VALUES(LAST_INSERT_ID(),507); etc..
Configuration: Linux Mozilla 1.9.0.7
Merci encore une fois. J''ai du mal a comprendre la synthaxe de SED pourtant c'est pas faute d'avoir lu ton tuto et d'autres mais j'ai toujours du mal a me souvenir de tous les paramètres ainsi que des diffèrences lorsque tu lance SED en ligne de commande ou depuis un script.
|
Dans la commande que tu m'indiques quels sont les paramètres que tu utilises pour supprimer les espaces devant chaque ligne
sed -n "/^ /{s/.*/blablabla'&');blablabla/"
$ man woman Il n'y a pas de page de manuel pour woman. |
Donc si je te suis bien ça c'est moins sûr, j'ai fait :
sed -n "/^ /{s/.*/INSERT INTO matable1 (acti,mail) VALUES(1,'&');\n\ INSERT INTO matable2 (uid,tid) VALUES(LAST_INSERT_ID(),507);/}" test.sql > test2.sql
le souci c'est que le fichier test2.sql est vide!! Merci L'accès au savoir est la première liberté que chaque homme devrait avoir.
|
Bin écoute je dois vraiement être nul car si je saisis :
sed "/^ /{s/.*/INSERT INTO matable1 (acti,mail) VALUES(1,'&');\n\ INSERT INTO matable2 (uid,tid) VALUES(LAST_INSERT_ID(),507);/}" test.sql > test2.sql
rien ne se passe le fichier test2.sql est identique au fichier test.sql Je m'arrache les cheveux!! L'accès au savoir est la première liberté que chaque homme devrait avoir. |
Ben chez moi ça marche ;-\ jp@MDK:~/tmpfs ssh$ cat plop
email
----------------------------------------------------
33@mail.fr
trmc@exemple.fr
etc..
jp@MDK:~/tmpfs ssh$ sed "/^ /{s/.*/INSERT INTO matable1 (acti,mail) VALUES(1,'&');\n\
INSERT INTO matable2 (uid,tid) VALUES(LAST_INSERT_ID(),507);/}\
" plop > toto
jp@MDK:~/tmpfs ssh$ cat toto
email
----------------------------------------------------
INSERT INTO matable1 (acti,mail) VALUES(1,' 33@mail.fr');
INSERT INTO matable2 (uid,tid) VALUES(LAST_INSERT_ID(),507);
INSERT INTO matable1 (acti,mail) VALUES(1,' trmc@exemple.fr');
INSERT INTO matable2 (uid,tid) VALUES(LAST_INSERT_ID(),507);
etc..
jp@MDK:~/tmpfs ssh$;-\ ?
$ man woman
Il n'y a pas de page de manuel pour woman. |
Bon c'est ok. En faites il n'y a plus d'espaces devant chaque ligne dans mon fichier c'est pourquoi la ligne de commande ne fonctionnait pas chez moi. Je l'ai modifié comme suit en enlevant l'espace entre le ^/ et c'est ok
sed "/^/{s/.*/INSERT INTO matable1 (acti,mail) VALUES(1,'&');\n\
INSERT INTO matable2 (uid,tid) VALUES(LAST_INSERT_ID(),507);/}\
" plop > toto
Merci encore jipicy pour le temps que tu m'as accordé. L'accès au savoir est la première liberté que chaque homme devrait avoir. |