Je veux supprimer tous les fichiers .jpg de mon dossier Musique afin de gagner de la place. Mon dossier Musique contient des sous-dossiers et j'aimerais savoir s'il existe une commande pour supprimer tous les fichiers .jpg de tous ces dossiers, quel que soit leur niveau. Merci de votre aide!
Le moyen le plus simple (si vous utilisez Ubuntu Desktop):
Accédez à votre dossier Musique dans Nautilus, appuyez sur Ctrl+F et recherchez .jpg
.
et ensuite le supprimer
Vous pouvez également modifier l'emplacement et rendre votre recherche plus précise.
Soyez plus précis après la recherche .jpg
En cliquant sur le bouton vert Select File type Picture
& supprimez jpg
de la recherche uniquement .
point & puis reload
comme indiqué dans l’illustration ci-dessous
Cela permet de rechercher un fichier image comme
.jpg .png .gif
et tous les autres fichiers qui sont enPicture Format
Une solution rapide et propre pour la ligne de commande serait
cd <dir>
find . -type f -iname \*.jpg -delete
.
indique de commencer la recherche dans le dossier actuel.-type f
indique à find uniquement de rechercher des fichiers.-iname
rend la recherche insensible à la casse.-delete
indique à find de supprimer/supprimer tous les fichiers trouvés.ATTENTION! Je recommande d'exécuter la commande sans -delete
au préalable pour obtenir la liste des fichiers qui seront supprimés lorsque -delete
sera inclus dans la commande. Ainsi, une petite faute de frappe ne supprimera rien de ce que vous n'aviez pas l'intention de faire.
Pour plus d'informations sur l'utilisation de find
et sur ce qu'il peut faire, voir man find
Notez que find
ne produira aucune sortie lorsque -delete
sera utilisé.
Concernant le commentaire sur plusieurs extensions
find . -type f \( -name \*jpg -o -name \*png \) -delete
( .. )
Expression de groupe. Doit être échappé du shell, d'où \( .. \)
dans l'exemple-o
ou logiqueAinsi, l'exemple ci-dessus correspondra à tout fichier dont le nom jpg
ou png
apparaît à la fin de son nom. Plusieurs extensions peuvent être ajoutées de la même manière. Veillez simplement à vous souvenir de -o
entre chaque instruction -name
; si -o
n'est pas spécifié, find
sera par défaut à -a
(et), ce qui ne fonctionnera pas car un fichier ne peut pas se terminer par jpg
et png
en même temps.
Cela devrait le faire
Sudo rm -rf -d ~/Music/*.JPG
qui supprimera tous les fichiers .JPG du dossier Musique.
Le shopt -s globstar
de Bash peut être utile ici pour les globbing récursifs:
bash-4.3$ tree
.
├── 10.jpg
└── subfolder
├── 5.jpg
└── another_subfolder
└── 15.jpg
2 directories, 3 files
bash-4.3$ shopt -s globstar
bash-4.3$ rm ./**/*.jpg
bash-4.3$ tree
.
└── subfolder
└── another_subfolder