J'essaye de mettre en place un script qui va boucler sur un ensemble de répertoires, et faire une chose quand il trouve des fichiers .jpg, et une autre quand il trouve des fichiers .nef. Le problème est que si un répertoire n'a pas de fichiers .jpg par exemple (ou .nef) alors l'entrée glob n'est plus un glob développé, mais juste une chaîne. Par exemple:
my_dir="pictures/"
ext="JPG"
for f in "$my_dir"*."$ext"; do
echo $f
done
si le dossier my_dir contient des fichiers .JPG, ils seront répercutés correctement sur la ligne de commande.
pictures/one.JPG
pictures/two.JPG
Cependant, si my_dir n'a pas de fichiers .JPG, alors la boucle entrera pour une itération et un écho:
pictures/*.JPG
comment puis-je construire cela de sorte que si le glob n'a pas de correspondance, il n'entre pas dans la boucle for?