Renommage de caractère dans un fichier texte
neonavy
Messages postés
93
Date d'inscription
Statut
Membre
Dernière intervention
-
lami20j Messages postés 21506 Date d'inscription Statut Modérateur, Contributeur sécurité Dernière intervention -
lami20j Messages postés 21506 Date d'inscription Statut Modérateur, Contributeur sécurité Dernière intervention -
Bonjour,
J'aimerai transformer les 5 premiers séparateurs de champ (ce sont des espaces ou des tabulations que je voudrai transformer en piont-virgule) d'un journal de log.
Quelqu'un aurait-il un script à me proposer?
D'avance merci.
J'aimerai transformer les 5 premiers séparateurs de champ (ce sont des espaces ou des tabulations que je voudrai transformer en piont-virgule) d'un journal de log.
Quelqu'un aurait-il un script à me proposer?
D'avance merci.
1 réponse
-
Salut,
c'était mieux d'avoir quelque ligne de ton fichier.
en conséquence j'ai créé un fichier bidon et voilà ce que ça donne
le fichier original est sauvegardé avec l'extension .origlami20j@debian:~$ cat vider.txt 0 a b c d e555champs aaa bbba 0 a b c d e555champs ccc 0 a b c d e555champs kdsjf sdjkf ksdj 0 a b c d e555champs 0 a b c d e555champs aaa 111;ff lami20j@debian:~$ perl -pi.orig -e 's#(.*)#join ";",split /\s+/,$1,6#e' vider.txt lami20j@debian:~$ cat vider.txt 0;a;b;c;d;e555champs aaa bbb 0;a;b;c;d;e555champs ccc 0;a;b;c;d;e555champs kdsjf sdjkf ksdj 0;a;b;c;d;e555champs 0;a;b;c;d;e555champs aaa 111;ff
etlami20j@debian:~$ cat vider.txt 0 a b c d e555champs aaa bbb 0 a b c d e555champs ccc 0 a b c d e555champs kdsjf sdjkf ksdj 0 a b c d e555champs 0 a b c d e555champs aaa 111;ff lami20j@debian:~$ perl -pi.orig -e 's/(\S+)\s+(\S+)\s+(\S+)\s+(\S+)\s+(\S+)\s+(.*)/$1;$2;$3;$4;$5;$6/' vider.txt lami20j@debian:~$ cat vider.txt 0;a;b;c;d;e555champs aaa bbb 0;a;b;c;d;e555champs ccc 0;a;b;c;d;e555champs kdsjf sdjkf ksdj 0;a;b;c;d;e555champs 0;a;b;c;d;e555champs aaa 111;ff
lami20j