Re: [CBLX] passer d'un format de 40 chars à 80 + corriger les CR/LF

[ Thread Index | Date Index | More lists.tuxfamily.org/carrefourblinux Archives ]


Phil,

je transmets cela en traduisant un peu en NL pour Dick du BLXF.

Je suppose que la syntaxe est:
unedeux.pl fichier.txt

Aldo.


On Tue, Jun 23, 2009 at 06:06:46PM +0200, Philippe Delavalade wrote:
> Re Aldo.
> 
> Les solutions emacs, fmt ou par sont sûrement meilleures que la mienne mais
> moi j'aime bien perl !
> 
> Je te joins un script qui fait l'affaire à un détail prêt : si tu concatène
> deux lignes de 40 tu peux obtenir une ligne de 81.
> 
> Philippe

> #!/usr/bin/perl -w
> 
> # réunit deux lignes consécutives
> 
> use File::Basename;
> use strict;
> 
> if( $#ARGV != 0 )
> {
>   print "\nSyntaxe : ".basename($0)." fichier\n";
>   exit 1;
> }
> 
> open( SRC, "<$ARGV[0]" ) || die "\nImpossible d'ouvrir $ARGV[0]";
> $/ = "";
> my @par;
> my $i = 0;
> 
> while( <SRC> )
> {
>     $par[$i] = $_;
>     $i++;
> }
> 
> close SRC;
> 
> open( DST, ">$ARGV[0].new" ) || die "\nImpossible d'ouvrir $ARGV[0].new";
> 
> $\ = "\n";
> my @l;
> my $j;
> 
> foreach $i (0..$#par)
> {
>     @l = split( '\n', $par[$i]);
>     foreach $j (0..$#l)
>     {
> 	if( $j%2 == 0 )
> 	{
> 	    print DST "$l[$j] $l[$j+1]";
> 	}
>     }
>     print DST '';
> }
> 
> close DST;
> 
> exit 0;


--
	https://bugs.launchpad.net/ubuntu/+bug/1 : 
Micro$oft has a majority market share in the new desktop PC marketplace.
This is a bug, which Ubuntu is designed to fix ! 
	http://www.ubuntu.com/ 

---
--
   CarrefourBLinuX MailingListe
   Pour obtenir de l'aide, envoyez le sujet  help  à:
   carrefourblinux-request@xxxxxxxxxxxxxxxxxxx
   Archives:
   http://listengine.tuxfamily.org/lists.tuxfamily.org/carrefourblinux


Mail converted by MHonArc 2.6.19+ http://listengine.tuxfamily.org/