Léa-Linux & amis :   LinuxFR   GCU-Squad   GNU
Suppimer 1 ligne / 2 dans un fichier
Envoyé par: yam

Bonjour,

Je souhaite supprimer une ligne sur deux (ou trois, quatre...) dans de gros fichiers texte. Existe-t-il une commande en tcsh ou autre permettant de faire cela? ou bien un petit script assez simple?

En fait, je n'ai pas trop d'idée. Je pensais à un "grep -n 0 mon_fichier" pour me donner les numéros de lignes (le 0 apparait à chaque ligne) puis faire un script qui me permettrais de lire la première colonne mais après pour éliminer par exemple tous les pairs ou les impairs je sèche un peu. Donc si quelqu'un a une idée, je le remercie vivement.

Poste le Wednesday 16 June 2004 17:38:35
Répondre     Citer    
Re: Suppimer 1 ligne / 2 dans un fichier
Envoyé par: LF

je sais pas comment faire avec un ligne de commande mais tu t'en sort avec un script bien lourd comme ça :

#!/usr/bin/perl

open(F,$ARGV[0]) or die "ouverture impossible! : #!\n";

$borne=1;
$cpt=0;

while($ligne = <F>)
{
#print "$cpt eq $borne \n";
if($cpt >= $borne) {print $ligne; $cpt=0;}
else {$cpt++;}
}


close F;

Poste le Thursday 17 June 2004 18:09:38
Répondre     Citer    

Veuillez vous authentifier auparavant pour commenter.

 

Ce forum !
Suppimer 1 ligne / 2 dans un fichier
Pour poser vos questions sur les scripts shell, le Perl, le C, etc... Attention : nous ne sommes pas des spécialistes du dev, ce forum est juste pour de petites aides ponctuelles concernant le développement et les outils de développement.

Sauf mention contraire, les documentations publiées sont sous licence Creative-Commons