2012-05-28 4 views
2

J'ai une boîte Windows 7 avec un cygwin installé. Pour un dossier donné, comment trouver l'horodatage des fichiers dans une certaine plage? J'ai besoin que le chèque soit récursif pour tous les dossiers.Recherche de fichiers modifiés au cours d'une certaine période

+0

Remarque: le meilleur effort est: ls -Rlt, puis en regardant manuellement les horodatages. – dublintech

+0

Si vous utilisez Windows Powershell, vous pouvez probablement le faire (le lien contient des exemples non pertinents, mais il démontre le potentiel): http://technet.microsoft.com/en-us/library/ee177028.aspx – nhahtdh

+0

Veuillez vérifier le manuel de la commande 'find' dans cygwin. Il se peut que l'implémentation prenne en charge la recherche de plage de temps. – nhahtdh

Répondre

1

Vous pouvez utiliser find pour rechercher une plage de temps, mais c'est un peu une solution de contournement.

Créer deux fichiers temporaires, par exemple temp1, temp2

touch --date 'yyyy-mm-dd' temp1 
touch --date 'yyyy-mm-dd' temp2 

Cela va changer les horodatages pour ces fichiers à tout ce que vous les définissez. Utilisez ensuite trouver avec ces fichiers comme la gamme:

find /some/dir/ -newer temp1 -not -newer temp2 

Remarque, votre recherche retournera les dates plus récentes que, mais sans compter temp1 et date de plus que, y compris temp2.

Questions connexes