[Script shell] Identification Mime pour information avec zenity
Bonjour,
Je suis un piètre débutant et voilà que je bloque sur un point dans mon premier script.
J'essaye d'écrire un script pour nautilus permettant de redimensionner des images pour les besoins de mon père (le plus user-friendly possible).
Dans mon script, je tente d'identifier si les fichiers selectionnés sont des images ou non. Jusque là, je m'en sort à peu près, mais je voudrais que si les fichiers sont et des images et d'autres types pouvoir l'identifier et le signaler avec un boîte de dialogue contenant la liste des fichiers qui ne sont pas des images.
Voici mon morceau de script, en espérant qu'il soit plus clair que moi ??
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27
| #!/bin/sh
for v_fichier_courant in "$@"
do
# Vérification de son type mime
v_mime_courant=`file -bi "$v_fichier_courant"`
v_fichier_est_image=`echo "$v_mime_courant" | grep image | wc -l`
# Teste si les fichiers sont bien des images
if [ $v_fichier_est_image -eq 0 ]; then
zenity --error --title="Autres" --text="$v_fichier_est_image, ce n'est pas une image"
# On quitte le programme
exit 1
fi
if [ $v_fichier_est_image -eq 1 ]; then
zenity --error --title="Image" --text="$v_fichier_est_image, c'est une image"
# On continue
break
fi
if [ $v_fichier_est_image -eq {0 ! 1} ]; then
zenity --error --title="Image et autre" --text="$v_fichier_est_image, il y a des images mais les fichiers 1,2 et 3 ne seront pas traités parce qu'ils n'en sont pas"
# On prévient et continue
break
fi
done
zenity --info --text="le script continue" |
(Désolé pour le code commis, mais comme je le disais, c'est mon premier script que j'ai commencé il y a une semaine.)
Comme vous l'imaginez, la réponse donné est la bonne pour une sélection unique, celle du premier fichier pour une sélection multiple et rien de plus.
J'ai bien tenté de comprendre le problème mais je dois avouer que je m'y perd. Si vous avez pour le moins un angle à me donner pour que je puisse reprendre mes recherches dans la bonne direction.
Merci par avance du coup de main que vous pourrez m'apporter.
Blondin