Find -ctime et ls

Bonjour,

Je ne comprends pas certaines nuances concernant les dates de fichiers:

Pour rechercher les fichiers créés il y a 20 jours, je tape :

find /LOG/ -type f -ctime 20 -exec ls -l {} \; |awk '{print $6}'|sort|uniq

Et là j'obtiens 2 dates différentes (!!!!) :
2007-06-28
2007-07-02

Bizarre en soi !

Mais en plus, si je tape
date -d "20 day ago" +'%Y-%m-%d'

eh bien j'obtiens "2007-07-07" !

Du coup je ne comprends plus grand chose !!

Merci pour vos suggestions !
Configuration: Windows XP
Firefox 2.0.0.4

3 réponses

  1. Les dates seront les mêmes si le fichier n'a pas été modifié depuis sa création
    rajouter des données >> log modifie la date de dernière modification
    un chmod, chown ou chgrp modifie la date de création (ou status)
    certain prog. de sauvegarde modifient cette date pour savoir ce qui a été sauvé
    0
    1. ah ben -c pour ls revient au meme que -ctime pour find apparemment :

      man ls :
      ls -c :
      Trier le contenu des repertoires en fonction des dates de changement des statuts de fichiers, plutot qu'en fonction de la date de modification. S'il s'agit d'un format long, afficher la date de changement de statut plutot que la date de modification du fichier

      man find :
      -ctime n
      derniere modification du statut du fichier il y a n*24 heures.

      Donc ca ne devrait pas donner 2 dates différentes non ??
      0
      1. Parce que -exec ls -l affiche les dates de modifications, pas de création.
        et avec -exec ls -lc ?
        0