Il existe plusieurs façons de rechercher des fichiers inférieurs à 1 Ko dans les systèmes de type Unix. En voici quelques-uns, en utilisant « find » et d'autres outils :
Méthode 1 :Utiliser `find` et `-size`
Il s’agit de la méthode la plus simple et la plus couramment utilisée :
```bash
trouver . -type f -taille -1k
```
* `find .` :démarre la recherche dans le répertoire courant (`.`). Remplacez-le par un autre répertoire si nécessaire.
* `-type f` :Spécifie que nous recherchons uniquement des fichiers (pas de répertoires ou d'autres types).
* `-size -1k` :C'est la partie cruciale. `-size` spécifie la taille du fichier, `-1k` signifie "inférieur à 1 kilo-octet". `k` désigne les kilo-octets. Vous pouvez utiliser d'autres unités comme « M » (mégaoctets), « G » (gigaoctets), « c » (octets), etc.
Méthode 2 :Utiliser `find` et `-printf` pour plus de détails
Si vous souhaitez plus d'informations sur les fichiers trouvés, vous pouvez utiliser `-printf` :
```bash
trouver . -type f -size -1k -printf "%s %p\n"
```
* `-printf "%s %p\n"` :Ceci indique à `find` d'imprimer la taille du fichier en octets (`%s`) et le chemin du fichier (`%p`), suivis d'une nouvelle ligne (`\n`).
Méthode 3 :Utiliser `find` et `xargs` pour les actions sur les fichiers
Si vous souhaitez effectuer une action sur les fichiers (par exemple, les supprimer, les compresser), vous pouvez combiner « find » avec « xargs » :
```bash
trouver . -type f -taille -1k -print0 | xargs -0 RM
```
Cela supprimera tous les fichiers inférieurs à 1 Ko. Soyez extrêmement prudent avec cette commande ! `-print0` et `-0` sont ici cruciaux pour gérer en toute sécurité les noms de fichiers avec des espaces ou des caractères spéciaux. Testez toujours ceci sur un exemple de répertoire avant de l’exécuter sur des données importantes. Pensez à ajouter un `-I {}` à `xargs` et à exécuter la commande dans un script pour confirmer l'action, pour encore plus de sécurité.
Exemple utilisant `-exec` :
Vous pouvez également utiliser `-exec` au lieu de `xargs` :
```bash
trouver . -type f -size -1k -exec ls -l {} \;
```
Ceci répertorie les détails de chaque fichier trouvé à l'aide de la commande `ls -l`.
Choisir la bonne méthode :
* Pour retrouver simplement les fichiers :La méthode 1 est la plus simple.
* Pour des informations détaillées sur les fichiers :la méthode 2 est préférable.
* Pour effectuer des actions sur les fichiers :la méthode 3 (en utilisant `xargs`) est plus sûre que d'utiliser directement `-exec` pour des opérations complexes mais nécessite une construction minutieuse et il est recommandé de la tester d'abord sur des données non critiques. `-exec` est parfaitement sûr et utile pour des actions plus simples.
N'oubliez pas de remplacer `.` par le chemin du répertoire réel si vous devez rechercher ailleurs. Soyez toujours prudent lorsque vous utilisez des commandes qui suppriment des fichiers. Il est fortement recommandé de sauvegarder vos données avant d'exécuter des commandes modifiant des fichiers.
|