1 #!usr/bin/perl
 2 
 3 # But du programme : Faire un recode forcé de tous les fichiers contenus dans le dossier passé en paramètre de la ligne de 
 4 # commande
 5 # Fonctionnement : perl prog [chemin]/[dossier]treetagger (le dossier doit être issus du programme BAO2, les fichiers doivent être passés au crible de treetagger)
 6 
 7 
 8 use strict;
 9 use warnings;
10 use 5.014;
11 
12 die "syntaxe correcte pour $0 = perl prog [chemin]/[dossier]treetagger" unless (@ARGV== 1);
13 #die "syntaxe correcte pour $0 = perl prog [chemin]/[dossier]treetagger" unless ($ARGV[0]=~ /.*?treetagger/);
14 
15 
16 # Main
17 say "_"x20;
18 my $dossier=$ARGV[0];
19 my $saveName="";
20 parcours($dossier);
21 
22 #Fonction(s)
23 
24 sub parcours
25 {
26     my ($dossierEnCours)=@_;
27     opendir (my $D, $dossierEnCours)  or die "Erreur d'ouverture de dossier type : $!";
28     foreach my $x (readdir ($D))
29     {
30             $saveName=$x;
31             $x=$dossierEnCours."/".$x;
32             next if $x=~ /^\.|\.\.?$/;
33         if (-d $x)
34         {
35             parcours($x);
36         }
37         elsif (-f $x)
38         {
39             appelTreetagger2xml($x);
40         }
41     }
42     closedir $D;
43 }
44 
45 sub appelTreetagger2xml
46 {
47     my ($fichier)=@_;
48     say $saveName;
49     system ("perl modifTreetagger2xml-utf8.pl $fichier utf-8 $saveName");
50 }