Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
[bash] variable dynamique [résolu]
View unanswered posts
View posts from last 24 hours

 
Reply to topic    Gentoo Forums Forum Index French
View previous topic :: View next topic  
Author Message
netfab
Veteran
Veteran


Joined: 03 Mar 2005
Posts: 1902
Location: 127.0.0.1

PostPosted: Sat Oct 29, 2005 11:09 am    Post subject: [bash] variable dynamique [résolu] Reply with quote

Salut,

Bash gère t'il les variables dynamiques ?
Apparemment non, puisque je me mange des bad substitution quelle que soit la syntaxe que j'utilise.

Exemple : voici un tableau :
Code:

TABLEAU[0]='a'
TABLEAU[1]='b'
TABLEAU[2]='c'
TABLEAU[3]='d'


Si je fais un :
Code:

echo ${#TABLEAU[*]}

J'obtiens en sortie le nombre d'éléments du tableau, ici 4.

Mais par contre, je ne parviens pas à créer une fonction qui me renverrai le nombre d'élements d'un tableau, en fonction du nom de ce tableau.
Dans le meilleur des cas, la chaîne obtenue n'est pas interprêtée.
Le but final est de pouvoir ajouter dynamiquement des éléments au tableau (je cherche peut-être trop compliqué...)
Est-ce possible ?
Merci.


Last edited by netfab on Sat Oct 29, 2005 11:36 am; edited 1 time in total
Back to top
View user's profile Send private message
widan
Veteran
Veteran


Joined: 07 Jun 2005
Posts: 1512
Location: Paris, France

PostPosted: Sat Oct 29, 2005 11:16 am    Post subject: Reply with quote

Quelque chose comme ça ?
Code:
#!/bin/bash

function item_count()
{
    eval "echo \${#$1[*]}"
}

A[0]="a"
A[1]="b"

echo $(item_count A)
Back to top
View user's profile Send private message
netfab
Veteran
Veteran


Joined: 03 Mar 2005
Posts: 1902
Location: 127.0.0.1

PostPosted: Sat Oct 29, 2005 11:36 am    Post subject: Reply with quote

Exactement. C'est cette fichue fonction eval qui me manquait, et en plus, j'ai toujours trop tendance à vouloir tout faire en une commande, alors que pour bien, il faut décomposer au maximum. Merci :wink:
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index French All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum