Je cherche un Shell one-liner pour trouver le fichier le plus ancien dans une arborescence de répertoires.
Réponses
Trop de publicités?
Okki
Points
21
PenguinLust
Points
125
Il semble que par "plus ancien", la plupart des gens ont supposé que vous vouliez dire "plus ancien temps de modification". C'est probablement corrigé, selon l'interprétation la plus stricte de "plus ancien", mais au cas où vous voudriez celui avec la plus ancienne accès temps, je modifierais la meilleure réponse ainsi :
find -type f -printf '%A+ %p\n' | sort | head -n 1
Remarquez le %A+
.
Dima
Points
11
set $(find /search/dirname -type f -printf '%T+ %h/%f\n' | sort | head -n 1) && echo $2
-
find ./search/dirname -type f -printf '%T+ %h/%f\n'
imprime les dates et les noms de fichiers sur deux colonnes. -
sort | head -n1
conserve la ligne correspondant au fichier le plus ancien. -
echo $2
affiche la deuxième colonne, c'est-à-dire le nom du fichier.
- Réponses précédentes
- Plus de réponses