Je voudrais remplacer dans ce fichier les N par des C, les B par des F et donc enregistrer les modifications dans le meme fichier
comment puis-je faire ceci ?
merci de vos reponses
perl -pi -e 'tr/NB/CF/' ^^^^^^^^^^^^^^^^^^
cela ne marche pas. Il faut toujours tester!
J'ai oublié de coller un '.bak' à la fin de -pi et surtout, il faut mettre le nom du fichier à la fin, je m'excuse! (testé sous Windows Me et ActiveState perl v5.8.6)
Je voudrais remplacer dans ce fichier les N par des C, les B par des F
et donc enregistrer les modifications dans le meme fichier
comment puis-je faire ceci ?
merci de vos reponses
perl -pi -e 'tr/NB/CF/'
^^^^^^^^^^^^^^^^^^
cela ne marche pas.
Il faut toujours tester!
J'ai oublié de coller un '.bak' à la fin de -pi et surtout, il faut mettre
le nom du fichier à la fin, je m'excuse!
(testé sous Windows Me et ActiveState perl v5.8.6)
Je voudrais remplacer dans ce fichier les N par des C, les B par des F et donc enregistrer les modifications dans le meme fichier
comment puis-je faire ceci ?
merci de vos reponses
perl -pi -e 'tr/NB/CF/' ^^^^^^^^^^^^^^^^^^
cela ne marche pas. Il faut toujours tester!
J'ai oublié de coller un '.bak' à la fin de -pi et surtout, il faut mettre le nom du fichier à la fin, je m'excuse! (testé sous Windows Me et ActiveState perl v5.8.6)
Il faut consulter le fichier 'partie.txt' pour voir le résultat, la commande a effectué les manipulations (remplacer les N par des C et les B par des F) dès le premier lancement.
Par contre, si tu consultes le fichier 'partie.txt.bak', tu ne vois pas le résultat (mais c'est normale, car le fichier 'partie.txt.bak' est une sauvegarde du fichier originale). En plus, si tu lances la commande une deuxième fois, les manipulations seront visible même dans le fichier 'partie.txt.bak'.
Mais il ne faut lancer la commande qu'une seule fois et ensuite, il faut consulter le résultat dans 'partie.txt' (...et non pas dans 'partie.txt.bak').
Merci d'indiquer le système d'exploitation (Linux, Windows XP, Windows 2000, Windows 95, etc...) et la version de perl (commande "perl -v") si tu as toujours des problèmes.
puis-je faire un script et non le lancer en ligne de commande ?
Bien sur, il y a plus d'une façon de procéder
(en anglais: "There's More Than One Way To Do It" -> TMTOWTDI, voir http://perl.enstimac.fr/DocFr/perlfaq1.html#estil%20difficile%20d'apprendre%20perl)
voici ma version script: ======================================= use strict; use warnings;
my $fichier = 'partie.txt'; my $ext = '.bak';
rename($fichier, $fichier.$ext) or die "Echec renommer '$fichier' '$fichier$ext', Raison: $!";
open(ENTREE, "<$fichier$ext") or die "Echec lecture fichier '$fichier$ext', Raison: $!"; open(SORTIE, ">$fichier") or die "Echec ecriture fichier '$fichier', Raison: $!";
while (<ENTREE>) { tr/NB/CF/; print SORTIE; }
close SORTIE; close ENTREE; =======================================
merci bcp
-- Klaus
"osiris" <osiris73@voila.fr> wrote in message
news:1121585673.254088.207040@g14g2000cwa.googlegroups.com...
merci Klaus, super
par contre 2 points:
je dois le lancer 2 fois en ligne de commande pour qu'il fasse les
manips
Chez moi, ça marche tout de suite avec le premier lancement:
Il faut consulter le fichier 'partie.txt' pour voir le résultat, la commande
a effectué les manipulations (remplacer les N par des C et les B par des F)
dès le premier lancement.
Par contre, si tu consultes le fichier 'partie.txt.bak', tu ne vois pas le
résultat (mais c'est normale, car le fichier 'partie.txt.bak' est une
sauvegarde du fichier originale). En plus, si tu lances la commande une
deuxième fois, les manipulations seront visible même dans le fichier
'partie.txt.bak'.
Mais il ne faut lancer la commande qu'une seule fois et ensuite, il faut
consulter le résultat dans 'partie.txt' (...et non pas dans
'partie.txt.bak').
Merci d'indiquer le système d'exploitation (Linux, Windows XP, Windows 2000,
Windows 95, etc...) et la version de perl (commande "perl -v") si tu as
toujours des problèmes.
puis-je faire un script et non le lancer en ligne de commande ?
Bien sur, il y a plus d'une façon de procéder
(en anglais: "There's More Than One Way To Do It" -> TMTOWTDI,
voir
http://perl.enstimac.fr/DocFr/perlfaq1.html#estil%20difficile%20d'apprendre%20perl)
voici ma version script:
======================================= use strict;
use warnings;
my $fichier = 'partie.txt';
my $ext = '.bak';
rename($fichier, $fichier.$ext)
or die "Echec renommer '$fichier' '$fichier$ext', Raison: $!";
open(ENTREE, "<$fichier$ext")
or die "Echec lecture fichier '$fichier$ext', Raison: $!";
open(SORTIE, ">$fichier")
or die "Echec ecriture fichier '$fichier', Raison: $!";
while (<ENTREE>) {
tr/NB/CF/;
print SORTIE;
}
close SORTIE;
close ENTREE;
=======================================
Il faut consulter le fichier 'partie.txt' pour voir le résultat, la commande a effectué les manipulations (remplacer les N par des C et les B par des F) dès le premier lancement.
Par contre, si tu consultes le fichier 'partie.txt.bak', tu ne vois pas le résultat (mais c'est normale, car le fichier 'partie.txt.bak' est une sauvegarde du fichier originale). En plus, si tu lances la commande une deuxième fois, les manipulations seront visible même dans le fichier 'partie.txt.bak'.
Mais il ne faut lancer la commande qu'une seule fois et ensuite, il faut consulter le résultat dans 'partie.txt' (...et non pas dans 'partie.txt.bak').
Merci d'indiquer le système d'exploitation (Linux, Windows XP, Windows 2000, Windows 95, etc...) et la version de perl (commande "perl -v") si tu as toujours des problèmes.
puis-je faire un script et non le lancer en ligne de commande ?
Bien sur, il y a plus d'une façon de procéder
(en anglais: "There's More Than One Way To Do It" -> TMTOWTDI, voir http://perl.enstimac.fr/DocFr/perlfaq1.html#estil%20difficile%20d'apprendre%20perl)
voici ma version script: ======================================= use strict; use warnings;
my $fichier = 'partie.txt'; my $ext = '.bak';
rename($fichier, $fichier.$ext) or die "Echec renommer '$fichier' '$fichier$ext', Raison: $!";
open(ENTREE, "<$fichier$ext") or die "Echec lecture fichier '$fichier$ext', Raison: $!"; open(SORTIE, ">$fichier") or die "Echec ecriture fichier '$fichier', Raison: $!";
while (<ENTREE>) { tr/NB/CF/; print SORTIE; }
close SORTIE; close ENTREE; =======================================
merci bcp
-- Klaus
Klaus Eichner
"osiris" wrote in message news:
merci Klaus, super
par contre 2 points:
je dois le lancer 2 fois en ligne de commande pour qu'il fasse les manips
puis-je faire un script et non le lancer en ligne de commande ?
merci bcp
J'ai vu que la réponse a été faite par googlegroups, et je pensait que l'astuce suivante serait très intéressante:
Il y a deux méthodes pour répondre avec googlegroups:
=========================== Méthode 1 - répondre sans contexte: =========================== Cliquer sur le lien >>reply<< en bas du message, une fenêtre vide apparaît et on peut saisir une réponse. Le problème avec cette méthode est qu'aucun contexte du message original n'est fourni.
=========================== Méthode 2 - répondre avec contexte (c'est ma méthode préférée): =========================== Cliquer sur le lien >>show options<< en haut du message, une nouvelle boîte grise s'ouvre automatiquement, ensuite il faut cliquer sur le lien >>reply<< dans la boîte grise. Avec cette méthode, le contexte du message original est automatiquement fourni.
-- Klaus
"osiris" <osiris73@voila.fr> wrote in message
news:1121585673.254088.207040@g14g2000cwa.googlegroups.com...
merci Klaus, super
par contre 2 points:
je dois le lancer 2 fois en ligne de commande pour qu'il fasse les
manips
puis-je faire un script et non le lancer en ligne de commande ?
merci bcp
J'ai vu que la réponse a été faite par googlegroups, et je pensait que
l'astuce suivante serait très intéressante:
Il y a deux méthodes pour répondre avec googlegroups:
=========================== Méthode 1 - répondre sans contexte:
=========================== Cliquer sur le lien >>reply<< en bas du message, une fenêtre vide apparaît
et on peut saisir une réponse. Le problème avec cette méthode est qu'aucun
contexte du message original n'est fourni.
=========================== Méthode 2 - répondre avec contexte (c'est ma méthode préférée):
=========================== Cliquer sur le lien >>show options<< en haut du message, une nouvelle boîte
grise s'ouvre automatiquement, ensuite il faut cliquer sur le lien >>reply<<
dans la boîte grise. Avec cette méthode, le contexte du message original est
automatiquement fourni.
je dois le lancer 2 fois en ligne de commande pour qu'il fasse les manips
puis-je faire un script et non le lancer en ligne de commande ?
merci bcp
J'ai vu que la réponse a été faite par googlegroups, et je pensait que l'astuce suivante serait très intéressante:
Il y a deux méthodes pour répondre avec googlegroups:
=========================== Méthode 1 - répondre sans contexte: =========================== Cliquer sur le lien >>reply<< en bas du message, une fenêtre vide apparaît et on peut saisir une réponse. Le problème avec cette méthode est qu'aucun contexte du message original n'est fourni.
=========================== Méthode 2 - répondre avec contexte (c'est ma méthode préférée): =========================== Cliquer sur le lien >>show options<< en haut du message, une nouvelle boîte grise s'ouvre automatiquement, ensuite il faut cliquer sur le lien >>reply<< dans la boîte grise. Avec cette méthode, le contexte du message original est automatiquement fourni.
-- Klaus
osiris
Et bien merci pour tout Klaus,
tes explications et ton script marche à la merveille
@+
Osiris73
"osiris" wrote in message news:
merci Klaus, super
par contre 2 points:
je dois le lancer 2 fois en ligne de commande pour qu'il fasse les manips
puis-je faire un script et non le lancer en ligne de commande ?
merci bcp
J'ai vu que la réponse a été faite par googlegroups, et je pensait que l'astuce suivante serait très intéressante:
Il y a deux méthodes pour répondre avec googlegroups:
======================== ==== Méthode 1 - répondre sans contexte: ======================== ==== Cliquer sur le lien >>reply<< en bas du message, une fenêtre vide appar aît et on peut saisir une réponse. Le problème avec cette méthode est q u'aucun contexte du message original n'est fourni.
======================== ==== Méthode 2 - répondre avec contexte (c'est ma méthode préférée ): ======================== ==== Cliquer sur le lien >>show options<< en haut du message, une nouvelle bo îte grise s'ouvre automatiquement, ensuite il faut cliquer sur le lien >>repl y<< dans la boîte grise. Avec cette méthode, le contexte du message origi nal est automatiquement fourni.
-- Klaus
Et bien merci pour tout Klaus,
tes explications et ton script marche à la merveille
@+
Osiris73
"osiris" <osiris73@voila.fr> wrote in message
news:1121585673.254088.207040@g14g2000cwa.googlegroups.com...
merci Klaus, super
par contre 2 points:
je dois le lancer 2 fois en ligne de commande pour qu'il fasse les
manips
puis-je faire un script et non le lancer en ligne de commande ?
merci bcp
J'ai vu que la réponse a été faite par googlegroups, et je pensait que
l'astuce suivante serait très intéressante:
Il y a deux méthodes pour répondre avec googlegroups:
======================== ====
Méthode 1 - répondre sans contexte:
======================== ====
Cliquer sur le lien >>reply<< en bas du message, une fenêtre vide appar aît
et on peut saisir une réponse. Le problème avec cette méthode est q u'aucun
contexte du message original n'est fourni.
======================== ====
Méthode 2 - répondre avec contexte (c'est ma méthode préférée ):
======================== ====
Cliquer sur le lien >>show options<< en haut du message, une nouvelle bo îte
grise s'ouvre automatiquement, ensuite il faut cliquer sur le lien >>repl y<<
dans la boîte grise. Avec cette méthode, le contexte du message origi nal est
automatiquement fourni.
tes explications et ton script marche à la merveille
@+
Osiris73
"osiris" wrote in message news:
merci Klaus, super
par contre 2 points:
je dois le lancer 2 fois en ligne de commande pour qu'il fasse les manips
puis-je faire un script et non le lancer en ligne de commande ?
merci bcp
J'ai vu que la réponse a été faite par googlegroups, et je pensait que l'astuce suivante serait très intéressante:
Il y a deux méthodes pour répondre avec googlegroups:
======================== ==== Méthode 1 - répondre sans contexte: ======================== ==== Cliquer sur le lien >>reply<< en bas du message, une fenêtre vide appar aît et on peut saisir une réponse. Le problème avec cette méthode est q u'aucun contexte du message original n'est fourni.
======================== ==== Méthode 2 - répondre avec contexte (c'est ma méthode préférée ): ======================== ==== Cliquer sur le lien >>show options<< en haut du message, une nouvelle bo îte grise s'ouvre automatiquement, ensuite il faut cliquer sur le lien >>repl y<< dans la boîte grise. Avec cette méthode, le contexte du message origi nal est automatiquement fourni.
-- Klaus
DoMinix
"osiris" wrote in message news:
merci Klaus, super
Il y a deux méthodes pour répondre avec googlegroups:
Méthode 1 - répondre sans contexte: Méthode 2 - répondre avec contexte (c'est ma méthode préférée):
Et bien merci pour tout Klaus,
tes explications et ton script marche à la merveille
@+
Osiris73
et tant qu'on y est, un rappel des bon usages:
1/ Merci de poster *a l'endroi* sur USENET, http://www.giromini.org/usenet-fr/repondre.html
joyeuses perlerie.
-- dominix
"osiris" <osiris73@voila.fr> wrote in message
news:1121585673.254088.207040@g14g2000cwa.googlegroups.com...
merci Klaus, super
Il y a deux méthodes pour répondre avec googlegroups:
Méthode 1 - répondre sans contexte:
Méthode 2 - répondre avec contexte (c'est ma méthode préférée):
Et bien merci pour tout Klaus,
tes explications et ton script marche à la merveille
@+
Osiris73
et tant qu'on y est, un rappel des bon usages:
1/ Merci de poster *a l'endroi* sur USENET,
http://www.giromini.org/usenet-fr/repondre.html