Se connecter / S'enregistrer

Résolu [Résolu] LINUX Commande pour trouver la date du fichier le plus récent

Solutions (3)
Tags :
  • Creation
  • linux
  • Système d'exploitation
|
Bonsoir,

Je cherche à obtenir la date du fichier le plus récent d'une arborescence de fichiers.
C'est à dire repérer la plus vielle date de création d'un fichier parmis plusieurs fichiers contenu dans un certain répertoire...

Je procède comme suis :
  1. find /home/moi/ -name "*.*" -exec date -r {} '+%s' \; | sort | tail -1


Je recherche tous les fichiers en affichant leur date de création (timestamp) puis je les ordonne pour enfin prendre le dernier (plus vieux)
Cela est cependant quelquefois erroné...

Quelqu'un sait pourquoi?
Quelqu'un a mieux à proposer?
Contenus similaires
Meilleure solution
partage
|
Bon finalement j'en suis arrivé à quelque chose qui semble fonctionner (il me trouve les bonnes dates depuis une semaine).

  1. find /mon/repertoire/perso/ -name "*.*" -exec date -r "{}" '+%s' 2>/dev/null \; | sort | tail -1

La redirection de la sortie d'erreur semble aider...

Par contre si quelqu'un souhaite utiliser cette commande il faut savoir qu'elle est relativement complexe en temps pour des "grosses arborescences".
Il faut effectivement effectuer un parcours en profondeur de l'arborescence puis d'appliquer sur la totalité des fichiers un algorithme de tri.

Ce serait donc plus performant de retenir la date du fichier au fur et à mesure du parcours si elle est plus récente que celles précédemment retenues...

Si ca peut aider :) 
  • Goyoto a sélectionné cette solution comme la meilleure réponse
  • Commenter cette solution |
Score
0
òh
òi
|
Salut,

J'avais effectivement essayé avec ls, seulement je souhaite obtenir un résultat pour une arborescence de dossier, donc à partir d'un dossier "père" et aller rechercher dans les sous-dossier.
Et je n'y suis pas arrivé avec la version récursive (ls -R)....
  • Commenter cette réponse |
Score
0
òh
òi
|
Si je comprend bien tu veut lister par date tout les fichier de ton arborescence sans te soucier du nom, dans ce cas utilise plutôt :

  1. ls -r -t -A


pour plus d'info tape
  1. ls --help
  • Commenter cette réponse |

Ce n'est pas ce que vous cherchiez ?

Tom's guide dans le monde
  • Allemagne
  • Italie
  • Irlande
  • Royaume Uni
  • Etats Unis
Suivre Tom's Guide
Inscrivez-vous à la Newsletter
  • ajouter à twitter
  • ajouter à facebook
  • ajouter un flux RSS