Explorer un document avec perl

Fermé
koukouse Messages postés 3 Date d'inscription vendredi 21 octobre 2011 Statut Membre Dernière intervention 23 octobre 2011 - 22 oct. 2011 à 19:35
koukouse Messages postés 3 Date d'inscription vendredi 21 octobre 2011 Statut Membre Dernière intervention 23 octobre 2011 - 23 oct. 2011 à 00:10
Bonjour,
je veux aficher le contenue d'un document ensuit re demander si en veux ouvrire un autre document sinon en sort voila ou je suis:

#!/usr/bin/perl
print"introduire le nom du docier a cherché sinon introduire 0:\n";
chomp(my $nomrep = <STDIN>);
opendir(DIR, $nomrep) || die "le fichier $nomrep n'existe pas\n";
while ($file = readdir(DIR))
{
print($file."\n");
};
closedir DIR;

merci d'avence :)
A voir également:

2 réponses

zipe31 Messages postés 36402 Date d'inscription dimanche 7 novembre 2010 Statut Contributeur Dernière intervention 27 janvier 2021 6 408
22 oct. 2011 à 19:52
Salut,

T'aurais pu répondre dans le post initial au lieu d'ouvrir un autre fil ;-((
0
lami20j Messages postés 21331 Date d'inscription jeudi 4 novembre 2004 Statut Modérateur, Contributeur sécurité Dernière intervention 30 octobre 2019 3 567
22 oct. 2011 à 21:28
Salut,

Voici un exemple.
Si on réponds O alors le contenu du fichier sera affiché et on passe au suivant
Si on réponds N le contenu du fichier ne sera pas afficher et on passe au suivant
Si on réponds q alors le programme s'arrête
lami20j@debian-acer:~$ ls -l rep1/
total 12
-rw-r--r-- 1 lami20j lami20j 37 oct.  22 20:55 fic1
-rw-r--r-- 1 lami20j lami20j 26 oct.  22 20:56 fic2
-rw-r--r-- 1 lami20j lami20j 37 oct.  22 21:25 fic3
lami20j@debian-acer:~$ cat rep1/fic1
fic1 ligne1
fic1 ligne2
fic1 ligne3

lami20j@debian-acer:~$ cat rep1/fic2
fic2 ligne 1
fic2 ligne 2
lami20j@debian-acer:~$ cat rep1/fic3
fic3 ligne1
fic3 ligne2
fic3 ligne3

lami20j@debian-acer:~$ cat rep.pl
#!/usr/bin/perl
use strict;use warnings;
print "Le nom du répertoire : ";
chomp(my $rep = <STDIN>);
opendir DIR,$rep or die "Le répertoire $rep n'existe pas : $!\n";

while(my $fic = readdir DIR){
  next if $fic =~ /^\.\.?$/; #on evite les répertoires . et ..;
  print "Ouvrir le fichier $rep/$fic , [O/N] ou q pour quitter : ";
  chomp (my $choix = <STDIN>);
  $choix eq "q" and last;
  if ($choix eq "O"){
    print "Fichier : $fic\n";
    open F,"$rep/$fic" or die "$!\n";
    while(my $ligne=<F>){
      print "$ligne";
    }
    close F;
  }
}
__END__

lami20j@debian-acer:~$ perl rep.pl
Le nom du répertoire : rep1
Ouvrir le fichier rep1/fic1 , [O/N] ou q pour quitter : q
lami20j@debian-acer:~$ perl rep.pl
Le nom du répertoire : rep1
Ouvrir le fichier rep1/fic1 , [O/N] ou q pour quitter : O
Fichier : fic1
fic1 ligne1
fic1 ligne2
fic1 ligne3

Ouvrir le fichier rep1/fic2 , [O/N] ou q pour quitter : N
Ouvrir le fichier rep1/fic3 , [O/N] ou q pour quitter : O
Fichier : fic3
fic3 ligne1
fic3 ligne2
fic3 ligne3

lami20j@debian-acer:~$ perl rep.pl
Le nom du répertoire : rep1
Ouvrir le fichier rep1/fic1 , [O/N] ou q pour quitter : N
Ouvrir le fichier rep1/fic2 , [O/N] ou q pour quitter : N
Ouvrir le fichier rep1/fic3 , [O/N] ou q pour quitter : O
Fichier : fic3
fic3 ligne1
fic3 ligne2
fic3 ligne3

lami20j@debian-acer:~$ 

0
koukouse Messages postés 3 Date d'inscription vendredi 21 octobre 2011 Statut Membre Dernière intervention 23 octobre 2011
23 oct. 2011 à 00:10
SLT ENCORE MERCI POUR L'AIDE mais il fait permission DENIED au sous fichier il ne l'ouvre pas est il afiche pas la vleur en octé merci de revoire le problem :)
0