Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 22/01/2006, à 02:04

ZeBob

[RESOLU][bash]parser des données séparer par une virgule

Bonjour,
Je souhaite extraire des données d'une variable séparées par un point-virgule afin de les mettre dans une variable array. J'ai essayer des trucs avec awk mais je bloque.

reponse=$(zenity --title="Stream" --width=640 --height=480 --list --text="Choississez les fichiers" --checklist --separator=";" --column="   " --column="Fichiers" "${liste[@]:1}")

Il faudait que je convertisse cette liste de fichiers sélectionnés en tableau afin de les manipuler avec une boucle for.
Merci de m'aiguiller.

Dernière modification par ZeBob (Le 22/01/2006, à 12:23)

Hors ligne

#2 Le 22/01/2006, à 02:49

ZeBob

Re : [RESOLU][bash]parser des données séparer par une virgule

J'ai essayer çà mais ça ne me donne rien

echo $reponse | gawk '{split($O,liste_fichiers,";")}'
echo ${liste_fichiers[@]}

Hors ligne

#3 Le 22/01/2006, à 11:03

mrf

Re : [RESOLU][bash]parser des données séparer par une virgule

tableau=`echo $reponse|awk -F, '{for(i=1;$i;i++) print $i}'`

Chaque ligne de tableau (c'est pas un vrai tableau, ça reste un texte...) contient l'un des fichiers

#4 Le 22/01/2006, à 11:25

ZeBob

Re : [RESOLU][bash]parser des données séparer par une virgule

C'est le problème il me faut un vrai tableau. Mais merci beaucoup.

Hors ligne

#5 Le 22/01/2006, à 12:16

ZeBob

Re : [RESOLU][bash]parser des données séparer par une virgule

Voici la solution quej'ai trouvé:

lister()
{
for arg
  do liste_fichiers=("${liste_fichiers[@]}" "$arg")
done
}

reponse=$(zenity --title="blabla" --width=640 --height=480 --list --text="Choississez les fichiers" --checklist --separator=";" --column="   " --column="Fichiers" "${liste[@]:1}") 


IFS=";"
lister $reponse

echo "${liste_fichiers[@]}"

Dernière modification par ZeBob (Le 22/01/2006, à 12:16)

Hors ligne