La commande find permet de trouver des fichiers, des répertoires et éventuellement d’exécuter une action par dessus. C’est exactement ce que je veux : trouver les répertoires vides d’un répertoire donné.
find -maxdepth 2 -empty -type d
- -maxdepth : permet de limiter le find à une profondeur de 2
- -empty : trouver les « vides »
- -type d : on veux les répertoire
Pour exécuter une commande sur le résultat
find -maxdepth 2 -empty -type d -delete
Attention, il n’y a pas de confirmation, d’où l’intérêt de tester sans l’option -delete avant
D’autres exemples de commandes
Donne la liste des fichiers de « /etc » ayant été modifiés ces dernières 24 heures :
find /etc -mtime -1
Cette utilisation de ‘find’ permet de supprime (après confirmation) tous les fichiers (sous Unix, GNU/Linux tout est fichiers, le répertoires sons aussi concernées) de « /tmp » n’ayant pas été utilisés depuis plus de 5 jours :
find /tmp -atime +5 -exec rm -ri {} \;
Pour trouver les fichiers de plus de 100 Mo on peux utiliser :
find ~ -size +100M