renommer un element dans un fichier - Perl - Programmation
Marsh Posté le 22-04-2008 à 14:53:33
Si c'est pour le faire via une ligne de commande, je recommanderai plutôt un sed ( sauf si ton fichier est vraiment énorme).
Si c'est à mettre "au sein" d'un script, choppe la regex d'Elmoricq et place la sur le parcours de ton fichier.
Marsh Posté le 22-04-2008 à 15:08:49
J'aime pas sed, c'est lent et c'est tout pourrÿ, même si pour ce genre de tache faire appel à PERL c'est peut-être un peu de l'overkill
Marsh Posté le 22-04-2008 à 15:17:35
j'ai fait un system je l'ai mis dedans mon script reste bloqué dessus je comprend pas,car quand je la lance directement dans mon shelle elle tourne
Citation : |
Marsh Posté le 22-04-2008 à 15:19:08
system() ?!
system() d'une commande PERL dans un script PERL ?
Euh, je... je... je... ne sais pas quoi dire, là.
Marsh Posté le 22-04-2008 à 15:20:49
ReplyMarsh Posté le 22-04-2008 à 15:21:44
ReplyMarsh Posté le 22-04-2008 à 16:04:58
Elmoricq a écrit : system() ?! |
fallait se servir de sed
donny3 a écrit : je crois avoir trouvé j 'ai rajouter ">" en plus |
donny3 a écrit : je n'ai pas besoin du system , c'est cela ?* |
Fais voir ton script ( ou au moins le morceau qui contient le "traitement" du fichier)
Marsh Posté le 23-04-2008 à 12:44:12
j'ai trouver cela mais pas encore tester
Code :
|
Marsh Posté le 23-04-2008 à 14:34:55
oui donc là tu as trouvé un truc prêt qui est censé faire ce que tu veux ...
Marsh Posté le 23-04-2008 à 15:19:46
je n'ai pas trop compris à quoi servait ceci
Code :
|
Marsh Posté le 23-04-2008 à 15:21:16
en faite il crée un .bac à chaque fois
je suis obligé de les supprimé à la fin
Marsh Posté le 23-04-2008 à 18:43:32
local $^I = '.bac';
ca a comme effet
1. de faire que les modifications aient lieu sur le fichier initial, "in place editing"
2. de creer automatiquement un fichier de backup avec l'extension .bac pour tout fichier utilise dans <>. (perl ne fait pas d'in place editing sans faire un fichier de backup a priori, sauf a passer par un tie du fichier sur un array)
A+,
Marsh Posté le 22-04-2008 à 13:37:29
salut,
J'ai un fichier texte
qui contient ce mot
DELTA
à plusieurs endroit,
je souhaiterais remplacer DELTA chaque fois que je le trouve par un autre element;
est ce possible avec un regex ?
Merci