Il arrive souvent que l'on ait besoin de voir les nouveaux fichiers récemment créés dans le système d'exploitation. C'est souvent le cas pour un administrateur système qui a créé un fichier de configuration et qui a ensuite oublié où il avait été enregistré. La recherche de nouveaux fichiers peut également s'avérer nécessaire pour vérifier si un fichier a été modifié récemment ou non. En général, les situations peuvent être très différentes. L'avantage du système d'exploitation Linux est qu'il propose traditionnellement plusieurs façons de résoudre un problème particulier.
Le moyen le plus simple et le plus courant de trouver de nouveaux fichiers sous Linux est l'utilitaire Find
. En fonction de vos besoins actuels, différents paramètres lui sont transmis. Par exemple, vous pouvez rechercher des fichiers uniquement dans un certain intervalle de mois ou de jours calendaires, voir ci-dessous pour plus de détails sur la manière de procéder.
Les fichiers sont affichés dans des répertoires et des sous-répertoires et sont triés :
$ find /etc -type f -printf '%TY-%Tm-%Td %TT %p ' | sort –r
Comme vous pouvez le voir, le résultat est assez impressionnant, mais il n'est pas possible de reconnaître les nouveaux fichiers dans toute la liste. C'est pourquoi nous devons utiliser une autre commande :
$ find /etc -type f -mmin -120
C'est ainsi que nous spécifions que le système ne doit rechercher que les fichiers créés au cours de la dernière heure.
S'il est nécessaire de couvrir les deux derniers jours, entrez la commande suivante :
$ find /etc -type f -mtime -2
Parfois, il n'est pas nécessaire de fouiller dans les sous-répertoires de troisième niveau ; pour exclure cette action, nous devons utiliser l'option spéciale maxdepth
:
$ find /etc -maxdepth 3 -mtime -2 -type f
Nous pouvons voir tous les nouveaux fichiers créés sur le système Linux au cours des sept derniers jours, à l'exception des trois derniers jours qui ne doivent pas être pris en compte :
$ find /etc -type f -mtime -7 ! -mtime -3
Ces commandes affichent le chemin d'accès au fichier, mais pour voir les attributs, nous devons utiliser l'option spéciale --exec
. Ensuite, nous afficherons les attributs de chaque nouveau fichier à l'aide de l'utilitaire ls
:
$ find /etc -type f -mmin -120 -exec ls -al {} ;
Si vous trouvez cette commande trop confuse et compliquée, vous pouvez en utiliser une autre :
$ find /etc -type f -mmin -120 | xargs ls -l
Ici, nous avons déjà utilisé un autre utilitaire, xargs
. L'utilitaire find vous permet également de trouver des fichiers plus récents qu'un fichier particulier. Par exemple, créons un fichier de référence :
$ touch /tmp/test
Trouvez maintenant tous les fichiers plus récents dans le répertoire racine qui ont été créés après lui :
$ find / -type f -newer /tmp/test
Passons à une autre méthode.
Cette méthode de recherche de nouveaux fichiers est beaucoup plus simple que la précédente et peut donc être recommandée aux débutants sous Linux. La commande ls
permet également de trier les fichiers d'un répertoire par date de création. Pour ce faire, il suffit d'exécuter ls :
$ ls -ltr
Il se peut qu'il y ait trop de fichiers, il est donc judicieux d'exécuter également cette commande :
$ ls -ltr | tail
Ce ne sont pas toutes les façons de trouver de nouveaux fichiers, mais elles sont suffisantes pour faire le travail rapidement et efficacement. Comme vous pouvez le constater, les commandes de recherche de base find et ls peuvent être rendues encore plus flexibles lorsqu'elles sont combinées avec sort, tail
et grep
.