• [^] # Re: Comment poser une question

    Posté par . En réponse au message incrémenter les lignes d'un fichier et découper à 30 lignes et passer à une nouvelle page. Évalué à 2.

    Voici un script qui résout cet exemple (si j'ai bien compris maintenant) :

    #!/usr/bin/env perl
    use strict;
    use warnings;
    open(my $fh, '<', 'input.csv') or die $!;
    my $n = 0; # compteur pour les noms des fichiers produits
    my $fh_out;
    open($fh_out, '>', "output-$n.csv") or die $!;
    while (my $line = <$fh>) {
     print $fh_out $line;
     if ($. % 3 == 0) {
     close $fh_out;
     # on ouvre un nouveau fichier
     $n++;
     open($fh_out, '>', "output-$n.csv") or die $!;
     }
    }

    En particulier, remarque bien que sysread n'est pas la façon la plus simple de lire un fichier. Je te laisse l'adapter.