Sous Linux, si vous cherchez un fichier ou un répertoire l'administrateur utilise
la commande find.
Cette commande, puissante, permet de chercher des fichiers avec de nombreux critères :
- type de fichier,
- nom,
- taille,
- permission,
- propriétaires
- date de modifications.
Chacun de ces critères peut être combiné par des
ou ou des
et .
Utilisation basique
Trouver un fichier dans un dossier à partir de son nom
|
find /dossier/ou/chercher -name "nom du fichier" |
Dans l'exemple suivant, la
commande find cherche les fichiers dont l'extension est mp4 à partir de la
home directory de l'utilisateur
Nous voyons donc qu'il est possible de mette
* dans le nom du fichier afin de faire des recherches génériques.
Trouver et lister les gros fichiers, dont la taille est supérieur à 1GO
|
find . -size +1G -exec ls -lh "{}" \; |
Trouver et lister les répertoire vides :
Il est également possible de combiner les arguments de la
commande find pour effectuer une action sur le ou les fichiers trouvés.
Cette opération se fait via la commande
-exec, comme nous l'avons vu avec l'exemple sur les fichier dont la taille est supérieur à 1GO.
Aussi, la commande ci-dessous supprime les fichiers dont la taill est supérieure à 3 GO :
|
find . -size +3G -exec rm {} \; |
Supprimer des fichiers en fonction de leur date de dernière modification
|
find /var/log -name "daemon.log*" -mtime +14 -exec rm {} \; |
A noter toutefois que cette commande find peut-être particulièrement coûteuse lorsqu'il est nécessaire de scanner toute l'arborescence.
Lister le top 10 des gros fichiers dans un répertoire :
|
find . -type f -exec ls -s {} \; | sort -n -r | head -10 |
Il est possible d'ajouter l'option -xdev. En effet, cette option permet de ne pas franchir les limites du système de fichiers. Bien pratique si vous faites un find sur /.
En effet, si il existe une partition /home par exemple , find n'ira pas dedans avec l'option -xdev mais restera dans le système de fichiers courants.
Bonjour,
Effectivement certaines de ses commandes sont intéressantes et cette page peut servir de petit « mémo » par contre j’aimerais aller plus loin, comme le dit le titre 🙂 Avez-vous prévu de l’enrichir au fil du temps ?
Bonsoir Eric,
Oui je pense utiliser cette page comme un pense bête et ajouter mes commandes au fil de l’eau.