[PERL] trouver un fichier

Résolu/Fermé
Houston-12 Messages postés 33 Date d'inscription jeudi 18 décembre 2003 Statut Membre Dernière intervention 23 juin 2009 - 21 janv. 2008 à 17:19
Houston-12 Messages postés 33 Date d'inscription jeudi 18 décembre 2003 Statut Membre Dernière intervention 23 juin 2009 - 23 janv. 2008 à 09:21
Bonjour,

Je cherche à placer dans une variable le nom d'un fichier dont je connais le début. De plus, je dois sélectionner le fichier le plus récent.

ex: le cherche le fichier débutant par AAA dans un répertoire définit.
Dans ce répertoire, j'ai les fichiers suivants :
AAAC_9_1.fichier
AAAC_9_2.fichier
BBBV_5_0.fichier
BBBV_5_1.fichier
Je souhaite donc entrer en paramètre AAA et qu'il place dans une variable AAAC_9_1.fichier afin que je la renvoie dans d'autres commandes.

J'ai essayé d'utiliser la commande find et glob mais sans résultat concret.

Merci pour votre aide
A voir également:

3 réponses

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 janv. 2008 à 20:56
Salut,

essaie comme ça
#!/usr/bin/perl
use strict;use warnings;
use File::Find;

my ($recent,$nom,$rep);
$rep = '/home/lami20j/trash';

# cherche le plus recent
sub plus_recent {
        return unless -f and /^abc/;
        return if defined $recent and $recent > (stat($_))[9];
        $recent = (stat(_))[9];
        $nom = $File::Find::name;
}

find(\&plus_recent,$rep);

if(defined($nom)){
        print "$nom\n";
}else {
        print "Fichier inexistant!\n";
}
__END__
5
Houston-12 Messages postés 33 Date d'inscription jeudi 18 décembre 2003 Statut Membre Dernière intervention 23 juin 2009 1
23 janv. 2008 à 09:21
Ca marche nikel.

Merci beaucoup
1
Houston-12 Messages postés 33 Date d'inscription jeudi 18 décembre 2003 Statut Membre Dernière intervention 23 juin 2009 1
22 janv. 2008 à 17:20
use File::Find;
sub wanted {
return unless -f;
if ($_ =~"^abc") {print $_,"\n"};
}
find \&wanted, ".";

me renvoie la liste des fichiers du répertoire débutant par le motif abc. Par contre, comment le sélectionner grace à la date la plus récente ?
0