Bonjour,
Je voudrais récuperer, dans un dossier, le fichier le plus ancien parmis une liste de fichier. Est-ce qu'il existe une fonction qui permet de le faire ou pas?
Merci d'avence!!
Bonjour,
Je voudrais récuperer, dans un dossier, le fichier le plus ancien parmis une liste de fichier. Est-ce qu'il existe une fonction qui permet de le faire ou pas?
Merci d'avence!!
Bonjour,
regarde du côté des tests sur fichiers et en particulier sur -M
Extrait de la doc de Perl :
-M : La date de démarrage du script moins la date de dernière modification du fichier (exprimé en jours).
Code : Sélectionner tout - Visualiser dans une fenêtre à part $_ = -M monfichier;
Merci beaucoup, en effet c'est pas mal je peut faire une comparaison a partir de ca!
Tu peux utiliser cette comparaison dans une fonction et l'utiliser avec la fonction sort pour trier une liste complète et en extraire le plus vieux !
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30 #!/usr/bin/perl # fonction de tri sub bydate($$) { my ($file1, $file2) = @_; return ((-M $file1) <=> (-M $file2)); } # récupération des fichiers my @list = glob("./*.*"); # tri de la liste des fichiers en utilisant la fonction 'bydate' my @sorted = sort bydate @list; # récupération du plus vieux fichier my $oldest = $sorted[$#sorted]; # affichage print("\n\nliste : \n"); print join("\n", @list); print("\n\nliste triée : \n"); print join("\n", @sorted); print("\n\nle plus vieux :\n"); print($oldest);
Partager