Scripte eclatement de fichier
Résolu
bouna
-
bouna -
bouna -
Bonjour,
je reçois des fichiers sous la forme suivante:
cat Fich
000000000000000000000001CH500343242205........
000000000000000000000001CA543242205062........
000000000000000000000001OL543242205062........
000000000000000000000002CH500343242205........
000000000000000000000002CA543242205062........
000000000000000000000002OL543242205062........
000000000000000000000003CH500343242205........
000000000000000000000003CA543242205062........
000000000000000000000003OL543242205062........
........
........
je souhaite avoir 3 fichires (fich1,fich2 et fich3)
fich1: composer que des lignes CH
fich2: composer que des lignes CA
fich3: composer que des lignes OL
je reçois des fichiers sous la forme suivante:
cat Fich
000000000000000000000001CH500343242205........
000000000000000000000001CA543242205062........
000000000000000000000001OL543242205062........
000000000000000000000002CH500343242205........
000000000000000000000002CA543242205062........
000000000000000000000002OL543242205062........
000000000000000000000003CH500343242205........
000000000000000000000003CA543242205062........
000000000000000000000003OL543242205062........
........
........
je souhaite avoir 3 fichires (fich1,fich2 et fich3)
fich1: composer que des lignes CH
fich2: composer que des lignes CA
fich3: composer que des lignes OL
3 réponses
-
Bonjour,
S'il vous plaît
Merci
Au revoir
etc.
Sont monnaie courante quand on veut obtenir quelque chose !
Saine lecture...
A voir aussi
Merci de votre compréhension.
;-)-
-
Re-
Pas de problème si ce n'est qu'un peu de politesse ne fait pas de mal ;-\
Sinon pour ton problème :
$ cat plop 000000000000000000000001CH500343242205........ 000000000000000000000001CA543242205062........ 000000000000000000000001OL543242205062........ 000000000000000000000002CH500343242205........ 000000000000000000000002CA543242205062........ 000000000000000000000002OL543242205062........ 000000000000000000000003CH500343242205........ 000000000000000000000003CA543242205062........ 000000000000000000000003OL543242205062........ $ cat script.sed #n /CH/{ w fich1 } /CA/{ w fich2 } /OL/{ w fich3 } $ ls plop script.sed $ sed -f script.sed plop $ ls fich1 fich2 fich3 plop script.sed $ cat fich1 000000000000000000000001CH500343242205........ 000000000000000000000002CH500343242205........ 000000000000000000000003CH500343242205........ $ cat fich2 000000000000000000000001CA543242205062........ 000000000000000000000002CA543242205062........ 000000000000000000000003CA543242205062........ $ cat fich3 000000000000000000000001OL543242205062........ 000000000000000000000002OL543242205062........ 000000000000000000000003OL543242205062........ $
;-)) -
-
-
-
-
Salut,
Avec grep ;-)grep CH Fich >fic1;grep CA Fich >fic2;grep OL Fich >fic3
GNU/Linux:Linux is Not Ubuntu! Quel linux choisir ne veut pas dire votre Distribution préférée,
106485010510997108-
-
-
Non la longueur et le nombre d'enregistrements n'en sont pas la cause, ni la répétition sur une même ligne du motif à rechercher.
Néanmoins, pour éviter qu'un motif se trouvant ailleurs que dans les 26 premiers caractères ne soit pris en compte, tu peux utiliser la regex suivante :
/[0-9]\+CA[0-9]\+/
Ce qui ne tiendra compte que des motifs précédés ou suivis d'un ou plusieurs chiffre(s).
-
-
Bonjour,
j'ai oublie de vous dire que je travail sous windows mais j'ai installé le logiciel mks.
est ce qu'il peut etre l'origine du pb?