J'ai trouvé dans les divers tutoriaux comment on fait pour remplacer une
chaine par une autre.
Par contre, quelle est la méthode pour remplacer une chaine par une autre
dans un fichier? Est-ce qu'il faut
- ouvrir le fichier
- charger son contenu
- faire le remplacement,
ou bien y a-t-il un moyen plus "direct"?
Par plus "direct" j'entends ne fournir que le nom du fichier à transformer,
la chaine à remplacer, la chaine de remplacement (sans les étapes liées à
l'ouverture du fichier, donc).
Par contre, quelle est la méthode pour remplacer une chaine par une autre dans un fichier? Est-ce qu'il faut - ouvrir le fichier - charger son contenu - faire le remplacement, ou bien y a-t-il un moyen plus "direct"?
Regarde Tie::File.
R12y wrote in message <1510140.PZZEJlWzLT@asso-polyvalente.fr>:
Par contre, quelle est la méthode pour remplacer une chaine par une autre
dans un fichier? Est-ce qu'il faut
- ouvrir le fichier
- charger son contenu
- faire le remplacement,
ou bien y a-t-il un moyen plus "direct"?
Par contre, quelle est la méthode pour remplacer une chaine par une autre dans un fichier? Est-ce qu'il faut - ouvrir le fichier - charger son contenu - faire le remplacement, ou bien y a-t-il un moyen plus "direct"?
J'ai trouvé dans les divers tutoriaux comment on fait pour remplacer une chaine par une autre.
Par contre, quelle est la méthode pour remplacer une chaine par une autre dans un fichier? Est-ce qu'il faut - ouvrir le fichier - charger son contenu - faire le remplacement, ou bien y a-t-il un moyen plus "direct"?
Par plus "direct" j'entends ne fournir que le nom du fichier à transformer, la chaine à remplacer, la chaine de remplacement (sans les étapes liées à l'ouverture du fichier, donc). [...]
J'ai trouvé dans les divers tutoriaux comment on fait pour remplacer une
chaine par une autre.
Par contre, quelle est la méthode pour remplacer une chaine par une autre
dans un fichier? Est-ce qu'il faut
- ouvrir le fichier
- charger son contenu
- faire le remplacement,
ou bien y a-t-il un moyen plus "direct"?
Par plus "direct" j'entends ne fournir que le nom du fichier à transformer,
la chaine à remplacer, la chaine de remplacement (sans les étapes liées à
l'ouverture du fichier, donc).
[...]
J'ai trouvé dans les divers tutoriaux comment on fait pour remplacer une chaine par une autre.
Par contre, quelle est la méthode pour remplacer une chaine par une autre dans un fichier? Est-ce qu'il faut - ouvrir le fichier - charger son contenu - faire le remplacement, ou bien y a-t-il un moyen plus "direct"?
Par plus "direct" j'entends ne fournir que le nom du fichier à transformer, la chaine à remplacer, la chaine de remplacement (sans les étapes liées à l'ouverture du fichier, donc). [...]
Oui. Ca c'est en "one-liner" à partir du prompt shell. Moi c'est dans un script que cherche à le faire, maintenant.
un script complet tout en perl ? en voila un : $ perl -MOÞparse -pi -e 's/foo/bar/g'
-- dominix
Patrice Karatchentzeff
"Mihamina (R12y) Rakotomandimby" a écrit :
Stephane Chazelas - :
perl -pi -e 's/foo/bar/g' file1 file2...
Oui. Ca c'est en "one-liner" à partir du prompt shell. Moi c'est dans un script que cherche à le faire, maintenant.
1) tu peux mettre un one-line dans un script :) 2) perlrun 't'indique ce que font ces options donc, à la limite, tu n'as juste qu'à faire un copier-coller...
Mais à ta place, j'apprendrai Perl en achetant un bouquin ou en lisant une doc...
Oui. Ca c'est en "one-liner" à partir du prompt shell.
Moi c'est dans un script que cherche à le faire, maintenant.
1) tu peux mettre un one-line dans un script :)
2) perlrun 't'indique ce que font ces options donc, à la limite,
tu n'as juste qu'à faire un copier-coller...
Mais à ta place, j'apprendrai Perl en achetant un bouquin ou en lisant
une doc...
Oui. Ca c'est en "one-liner" à partir du prompt shell. Moi c'est dans un script que cherche à le faire, maintenant.
1) tu peux mettre un one-line dans un script :) 2) perlrun 't'indique ce que font ces options donc, à la limite, tu n'as juste qu'à faire un copier-coller...
Mais à ta place, j'apprendrai Perl en achetant un bouquin ou en lisant une doc...
À (at) Wed, 27 Jun 2007 00:44:52 +0200, "Mihamina (R12y) Rakotomandimby" écriva it (wrote):
Moi c'est dans un script que cherche à le faire, maintenant.
Un one-liner est pratique car concis et rapide à écrire mais, en cas d'erreur, il ne gère rien. Mais comme le programmeur (qui est aussi l'utilisateur) est là, ce n'est pas un problème.
Dans un script, il vaut mieux gérer les choses le plus proprement possible : faites une petite fonction pour faire ce que vous voulez. En pensant a tous les cas "tordus" : que fait-on si le fichier n'existe pas ? si on n'a pas les droits pour l'ouvrir ? s'il n'y a plus de place sur le disque ? etc. Pensez aussi aux cas où la chaîne contient des caractères spéciaux (pour les regexp) ou des passages à la ligne.
L'utilisateur futur et le programmeur qui, plus tard, devra déboguer vous en remercieront !
-- Paul Gaborit - <http://perso.enstimac.fr/~gaborit/> Perl en français - <http://perl.enstimac.fr/>
À (at) Wed, 27 Jun 2007 00:44:52 +0200,
"Mihamina (R12y) Rakotomandimby" <infogerance@asso-polyvalente.fr> écriva it (wrote):
Moi c'est dans un script que cherche à le faire, maintenant.
Un one-liner est pratique car concis et rapide à écrire mais, en cas
d'erreur, il ne gère rien. Mais comme le programmeur (qui est aussi
l'utilisateur) est là, ce n'est pas un problème.
Dans un script, il vaut mieux gérer les choses le plus proprement
possible : faites une petite fonction pour faire ce que vous
voulez. En pensant a tous les cas "tordus" : que fait-on si le fichier
n'existe pas ? si on n'a pas les droits pour l'ouvrir ? s'il n'y a
plus de place sur le disque ? etc. Pensez aussi aux cas où la chaîne
contient des caractères spéciaux (pour les regexp) ou des passages à
la ligne.
L'utilisateur futur et le programmeur qui, plus tard, devra déboguer
vous en remercieront !
--
Paul Gaborit - <http://perso.enstimac.fr/~gaborit/>
Perl en français - <http://perl.enstimac.fr/>
À (at) Wed, 27 Jun 2007 00:44:52 +0200, "Mihamina (R12y) Rakotomandimby" écriva it (wrote):
Moi c'est dans un script que cherche à le faire, maintenant.
Un one-liner est pratique car concis et rapide à écrire mais, en cas d'erreur, il ne gère rien. Mais comme le programmeur (qui est aussi l'utilisateur) est là, ce n'est pas un problème.
Dans un script, il vaut mieux gérer les choses le plus proprement possible : faites une petite fonction pour faire ce que vous voulez. En pensant a tous les cas "tordus" : que fait-on si le fichier n'existe pas ? si on n'a pas les droits pour l'ouvrir ? s'il n'y a plus de place sur le disque ? etc. Pensez aussi aux cas où la chaîne contient des caractères spéciaux (pour les regexp) ou des passages à la ligne.
L'utilisateur futur et le programmeur qui, plus tard, devra déboguer vous en remercieront !
-- Paul Gaborit - <http://perso.enstimac.fr/~gaborit/> Perl en français - <http://perl.enstimac.fr/>
kurtz le pirate
In article , "Mihamina (R12y) Rakotomandimby" wrote:
Bonjour,
J'ai trouvé dans les divers tutoriaux comment on fait pour remplacer une chaine par une autre.
Par contre, quelle est la méthode pour remplacer une chaine par une autre dans un fichier? Est-ce qu'il faut - ouvrir le fichier - charger son contenu - faire le remplacement, ou bien y a-t-il un moyen plus "direct"?
ce que moi je fais couramment :
- j'ouvre le fichier 'source' - je fais mes remplacements - j'écris le résultat dans 'temp' - suivant les traitements : - je renomme : source -> source.old et le temp -> source - je renome temp en source et j'efface l'original
mais ne pas oublier : TIMTOWTDI :)
-- klp
In article <1510140.PZZEJlWzLT@asso-polyvalente.fr>,
"Mihamina (R12y) Rakotomandimby" <infogerance@asso-polyvalente.fr>
wrote:
Bonjour,
J'ai trouvé dans les divers tutoriaux comment on fait pour remplacer une
chaine par une autre.
Par contre, quelle est la méthode pour remplacer une chaine par une autre
dans un fichier? Est-ce qu'il faut
- ouvrir le fichier
- charger son contenu
- faire le remplacement,
ou bien y a-t-il un moyen plus "direct"?
ce que moi je fais couramment :
- j'ouvre le fichier 'source'
- je fais mes remplacements
- j'écris le résultat dans 'temp'
- suivant les traitements :
- je renomme : source -> source.old et le temp -> source
- je renome temp en source et j'efface l'original
In article , "Mihamina (R12y) Rakotomandimby" wrote:
Bonjour,
J'ai trouvé dans les divers tutoriaux comment on fait pour remplacer une chaine par une autre.
Par contre, quelle est la méthode pour remplacer une chaine par une autre dans un fichier? Est-ce qu'il faut - ouvrir le fichier - charger son contenu - faire le remplacement, ou bien y a-t-il un moyen plus "direct"?
ce que moi je fais couramment :
- j'ouvre le fichier 'source' - je fais mes remplacements - j'écris le résultat dans 'temp' - suivant les traitements : - je renomme : source -> source.old et le temp -> source - je renome temp en source et j'efface l'original
mais ne pas oublier : TIMTOWTDI :)
-- klp
GLudovic66000
On 27 juin, 19:57, kurtz le pirate wrote:
In article , "Mihamina (R12y) Rakotomandimby"
wrote:
Bonjour,
J'ai trouvé dans les divers tutoriaux comment on fait pour remplacer une chaine par une autre.
Par contre, quelle est la méthode pour remplacer une chaine par une a utre dans un fichier? Est-ce qu'il faut - ouvrir le fichier - charger son contenu - faire le remplacement, ou bien y a-t-il un moyen plus "direct"?
ce que moi je fais couramment :
- j'ouvre le fichier 'source' - je fais mes remplacements - j'écris le résultat dans 'temp' - suivant les traitements : - je renomme : source -> source.old et le temp -> source - je renome temp en source et j'efface l'original
mais ne pas oublier : TIMTOWTDI :)
-- klp
au risque d'être un peu HS, il existe gsar qui remplace un texte dans un fichier. C'est l'équivalent de grep pour le remplacement. On peut appeler gsar depuis perl, du genre system.
Ludo66000
On 27 juin, 19:57, kurtz le pirate <kurtzlepir...@yahoo.fr> wrote:
In article <1510140.PZZEJlW...@asso-polyvalente.fr>,
"Mihamina (R12y) Rakotomandimby" <infogera...@asso-polyvalente.fr>
wrote:
Bonjour,
J'ai trouvé dans les divers tutoriaux comment on fait pour remplacer une
chaine par une autre.
Par contre, quelle est la méthode pour remplacer une chaine par une a utre
dans un fichier? Est-ce qu'il faut
- ouvrir le fichier
- charger son contenu
- faire le remplacement,
ou bien y a-t-il un moyen plus "direct"?
ce que moi je fais couramment :
- j'ouvre le fichier 'source'
- je fais mes remplacements
- j'écris le résultat dans 'temp'
- suivant les traitements :
- je renomme : source -> source.old et le temp -> source
- je renome temp en source et j'efface l'original
mais ne pas oublier : TIMTOWTDI :)
--
klp
au risque d'être un peu HS, il existe gsar qui remplace un texte dans
un fichier. C'est l'équivalent de grep pour le remplacement. On peut
appeler gsar depuis perl, du genre system.
J'ai trouvé dans les divers tutoriaux comment on fait pour remplacer une chaine par une autre.
Par contre, quelle est la méthode pour remplacer une chaine par une a utre dans un fichier? Est-ce qu'il faut - ouvrir le fichier - charger son contenu - faire le remplacement, ou bien y a-t-il un moyen plus "direct"?
ce que moi je fais couramment :
- j'ouvre le fichier 'source' - je fais mes remplacements - j'écris le résultat dans 'temp' - suivant les traitements : - je renomme : source -> source.old et le temp -> source - je renome temp en source et j'efface l'original
mais ne pas oublier : TIMTOWTDI :)
-- klp
au risque d'être un peu HS, il existe gsar qui remplace un texte dans un fichier. C'est l'équivalent de grep pour le remplacement. On peut appeler gsar depuis perl, du genre system.