Sto cercando di impostare uno script che eseguirà il ciclo su una serie di directory e fare una cosa quando trova i file .jpg e un'altra quando trova i file .nef. Il problema è che se una directory non ha file .jpg, ad esempio (o .nef), la voce glob non è più un glob espanso, ma solo una stringa. Per esempio:
my_dir="pictures/"
ext="JPG"
for f in "$my_dir"*."$ext"; do
echo $f
done
se la cartella my_dir contiene file .JPG, verranno echo correttamente nella riga di comando.
pictures/one.JPG
pictures/two.JPG
Tuttavia, se my_dir non ha file .JPG, il ciclo entrerà per un'iterazione ed eco:
pictures/*.JPG
come lo costruisco in modo che se il glob non ha corrispondenze, non entri nel ciclo for?