[Linux] Trouver tous les fichiers modifiés à une date précise (et même a une heure précise)
Il peut parfois être intéressant de trouver les fichiers modifiés à une date ou une heure précise sur un serveur, par exemple si il s’est passé quelquechose de louche sur le serveur en question… 😉
Voici donc une ligne de commande shell Bash qui vous permettra d’avoir une liste de fichiers modifiés entre 2 heures:
find . -type f -newermt "2016-05-09 11:31:00" ! -newermt "2016-05-09 11:33:00"
Bien évidemment, c’est à vous de régler l’intervalle de temps qui vous plait, vous pouvez y mettre plusieurs jours ou mois si ça vous chante, d’ailleurs le code suivant vous renverra la liste des fichiers modifiés le 9 mais 2016:
find . -type f -newermt "2016-05-09" ! -newermt "2016-05-10"
Dans le même ordre d’idée, vous pouvez aussi avoir la liste des fichiers dont le dernier accès remonte à une date grâce au paramètre newerat:
find . -type f -newerat 2016-05-09 ! -newerat 2016-05-10
Mais aussi la liste de fichiers dont les droits ont été changés à une date grâce au paramètre newerct:
find . -type f -newerct 2016-05-09 ! -newerct 2016-05-10
Allez pour la route, je vous en donne un petit dernier: tous les fichiers modifiés en 2013 qui ne sont pas des images:
find . -type f -newermt "2013-01-01" ! -newermt "2013-12-31" -not -name "*.JPG" -a -not -name "*.jpg" -a -not -name "*.png" -a -not -name "*.PNG"
Merci beaucoup pour ces explications, bien puissant cet outil « find » 🙂
Merci beaucoup !
je me suis perdu dans le ‘man find’ votre article répond à mes attentes !
Simple efficace !
En échange je vous laisse l’url de mon wiki, on ne sais jamais !
Bonne journée 😉