Recherche de site Web

Comment trouver et supprimer tous les fichiers vides à l’aide de la ligne de commande shell


Dans cette configuration, vous allez apprendre à trouver tous les fichiers vides dans un répertoire donné à l’aide de la commande find. Voici notre répertoire sandbox /tmp/temp contenant des fichiers dont certains sont vides :


.
├── dir1
│   ├── dir2
│   │   ├── file3
│   │   └── file4
│   ├── file2
│   └── file3
├── file1
└── file2

2 directories, 6 files

Localisons d’abord tous les fichiers vides de manière récursive à partir d’un répertoire de travail actuel à l’aide de la commande find :


pwd
/tmp/temp
find  . -type f -empty
OR
find  /tmp/temp -type f -empty
./dir1/dir2/file4
./dir1/file3
./file2

La commande linux suivante recherchera tous les fichiers vides uniquement dans un répertoire de travail actuel, c’est-à-dire non récursivement :


find  . -maxdepth 1 -type f -empty
./file2

Pour supprimer tous les fichiers vides, nous combinerons la commande find avec son option exec. La commande linux suivante supprimera tous les fichiers vides trouvés de manière récursive :


find  . -type f -empty -exec rm "{}" \;
OR
find  /tmp/temp -type f -empty -exec rm "{}" \;
tree 
.
├── dir1
│   ├── dir2
│   │   └── file3
│   └── file2
└── file1

2 directories, 3 files

Articles connexes: