[pdksh] array indirect references
#1

Dans les shells + évolués que pdksh, il existe la technique des références indirectes - appelées aussi 'pointeurs indirects' dans certains langages de programmation, tel C - cela permet de créer des variables dynamiques à partir d'autres et ainsi de récupérer leurs valeurs.

Bref, j'essaye d'appliquer les explications sur cette page, j'arrive à un résultat probant par le biais de l'instruction 'eval', ou d'une declaration 'typeset 'n pour ksh93... mais pas à de résultat avec la technique de tableau.


Voili, voilou... si quelqu'un peut tester dans son coin, ça serait sympa.

Je donne une début de code :

Code :
set -A menus 'badips' 'blacklist' 'bogons' 'quit'

txt_menus_badips="Generate a badips list"
txt_menus_blacklist="Generate a blacklist domains"
txt_menus_bogons="Generate a bogons list"

set -A dialog_menu
    set -A iostat
    
    typeset nb="${#menus[@]}"
    
    i=0
    while (( i < $nb )); do
        #dialog_menu[$i]="${menus[$i]} ${menus[$i]} "
        name="${menus[$i]}"
        text="txt_menus_$name"; echo "txt: $text"
        #eval "infos=\${$text}";
        iostat[$i]=$(text)
        echo "indirect ref: ${iostat[$i]}"
        dialog_menu[$i]="${menus[$i]}"
        let i+=1
    done

GPG:Fingerprint ed25519 : 072A 4DA2 8AFD 868D 74CF  9EA2 B85E 9ADA C377 5E8E
GPG:Fingerprint rsa4096 : 4E0D 4AF7 77F5 0FAE A35D  5B62 D0FF 7361 59BF 1733
Répondre


Sujets apparemment similaires…
Sujet / Auteur Réponses Affichages Dernier message

Atteindre :


Utilisateur(s) parcourant ce sujet : 1 visiteur(s)