Definir une variable script shell

Résolu/Fermé
snow_frog Messages postés 216 Date d'inscription jeudi 5 février 2009 Statut Membre Dernière intervention 26 juin 2020 - 1 avril 2009 à 21:48
snow_frog Messages postés 216 Date d'inscription jeudi 5 février 2009 Statut Membre Dernière intervention 26 juin 2020 - 2 avril 2009 à 07:44
Bonjour,

j'ai une petit probleme "bateau" pour définir une variable...

je voudrais pouvoir affecter à ma variable de type de fichiers les .gif et .png

mais quoi que je fasse il ne prend que la premiere extention....

#!/bin/bash

#exec 2>/dev/null

NETIMG="*.gif  *.png"



mais dans chaque cas il ne me prend pas en compte le *.png...

et je n'arrive pas à trouver de man sur l'attibution de valeur "multiple" à une variable....

par contre, si je tape directement la ligne var="*.gif *.png" dans la console et que je fait echo $var il me trouve bien tous les fichiers gif ET png

2 réponses

lami20j Messages postés 21331 Date d'inscription jeudi 4 novembre 2004 Statut Modérateur, Contributeur sécurité Dernière intervention 30 octobre 2019 3 567
1 avril 2009 à 22:10
Salut,

Je viens de tester et ça marche chez moi

Essaie
#!/bin/bash

NETIMG="*.gif  *.png"
echo $NETIMG

Mais quel est l'intérêt de faire ça?
Si tu veux traiter les fichiers un par un, peut être il faut penser à une boucle.

1
snow_frog Messages postés 216 Date d'inscription jeudi 5 février 2009 Statut Membre Dernière intervention 26 juin 2020 139
2 avril 2009 à 07:44
merci de ton aide.

en fait la boucle sert après.

IMG="*.gif *.png"
GIF_VERT="_??_vert.gif"
GIF_BLEU="_??_bleu.gif"
PNG_JAUNE="_jaune_??h??.png
...

for DIR in `find -type d`; do
for FILE in $DIR/$IMG ; do
for i in $FILE ; do

case $i in

  $GIF_VERT) commande_vert
;;
  $GIF_BLEU) commande_bleue
;;
  $PNG_JAUNE) commande_jaune
;;
esac
...

0