supprimers les 2 premieres ligne d'un fichier et le retour chariot présent sur la troisieme ligne ?

Le
david
Bonjour,

J'ai plusieurs gros fichiers formatés ainsi :


debut de mon fichier
%!
(listingp.jdt) STARTLM
^M^L079 E3483 DU 15/12/2006 15/12/2006 CONTROLE C.A.I. GRAPPE
PTF PGE PAGE 1

<EUROS>
<TYPE DE GRAPPE><-REFERENCE DE L'ENTITE--><--ZONE
ERRONEE--><-
VALEUR CAI-><-THEORIQUE--><ECART-><--DBKEY>
TRI ANO/D
etc

,

Je cherche à supprimer les 2 premieres lignes, ainsi que le retour chariot
^M^L
de facon a ce que mon fichier débute par :


debut du nouveau fichier
079 E3483 DU 15/12/2006 15/12/2006 CONTROLE C.A.I. GRAPPE
PTF PGE PAGE 1

<EUROS>
<TYPE DE GRAPPE><-REFERENCE DE L'ENTITE--><--ZONE
ERRONEE--><-
VALEUR CAI-><-THEORIQUE--><ECART-><--DBKEY>
TRI ANO/D
etc


J'ai testé ceci, mais le -i n'est pas admi sur mon UNIX

sed -i.BAK '1d' monfichier

Avez vous une idée.
Trés cordialement
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Nicolas.MICHEL
Le #1877601
david
Bonjour,

J'ai plusieurs gros fichiers formatés ainsi :


[snip]

J'ai testé ceci, mais le -i n'est pas admi sur mon UNIX
sed -i.BAK '1d' monfichier
Avez vous une idée.


Je ne suis pas très habile avec sed mais comme persone n'a répondu ...

sed -e '1,2d;3s/^...//' qq >qq1

produit chez moi le résultat escompté hormis l'option -i.

Pour faire ce que fait l'option -i sans l'option -i, une des possibilité
serait de faire une boucle à la noix du genre

l=0
for i in $(ta liste de fichiers)
do
l=$( expr $l + 1 )
sed ... >${i}${l}

--
Nicolas

Publicité
Poster une réponse
Anonyme