Parceque j'ai lu trop rapidement....

Le print de i te donne vraiment rien ? Perso je fais plutôt ${i}


 Check_VARIABLE=(_VAL1_ _VAL2_ _VAL3_ _VAL4_ _)

        for i in "${Check_VARIABLE[@]}"
                do
                        if [ -z "${!i}" ] ; then
                                # ERREUR : FIN DU PROGRAMME
                                /bin/rm ${TASK_IN_LOAD}
                                exit
                        fi
                done



________________________________
De : Kevin Thiou <kevinth...@gmail.com>
Envoyé : vendredi 6 avril 2018 16:21:11
À : Sébastien 65
Cc : David Ponzone; frnog-t...@frnog.org
Objet : Re: [FRnOG] [TECH] Script mikrotik

Pourquoi LD ?

mes valeurs de i sont LD1, LM1, LDV1, LV2, LM2, LDV2.

Cdt

Le 6 avril 2018 à 16:16, Sébastien 65 
<sebastien...@live.fr<mailto:sebastien...@live.fr>> a écrit :

Essaye avec ${LD} ou "${LD}"

________________________________
De : frnog-requ...@frnog.org<mailto:frnog-requ...@frnog.org> 
<frnog-requ...@frnog.org<mailto:frnog-requ...@frnog.org>> de la part de Kevin 
Thiou <kevinth...@gmail.com<mailto:kevinth...@gmail.com>>
Envoyé : vendredi 6 avril 2018 15:52:26
À : David Ponzone
Cc : frnog-t...@frnog.org<mailto:frnog-t...@frnog.org>
Objet : Re: [FRnOG] [TECH] Script mikrotik

J'ai réussi a mettre le $ devant mais je pense que le routerOS interprète
le $LD1 comme une valeur et pas comme une variable.

:foreach i in $LOGIN do={:global temp ("\$" . "$i"); :interface
pppoe-client monitor $i once do={:put $temp; :set ($temp->"operstatus")
$status}}

$LD1
          status: connected


Le 6 avril 2018 à 15:29, Kevin Thiou 
<kevinth...@gmail.com<mailto:kevinth...@gmail.com>> a écrit :

> Je me doutais bien que c'était ca, j'ai essayé beaucoup de \$ "\$" "\$".
> ...
>
> mais pas encore trouvé.
>
> Merci
>
> Le 6 avril 2018 à 15:27, David Ponzone 
> <david.ponz...@gmail.com<mailto:david.ponz...@gmail.com>> a écrit :
>
>> A priori, ton ($i->"operstatus") devient (LD1->"operstatus")
>>
>> Or pour faire un set dans l'array LD1, il faut que ça soit
>> ($LD1->"operstatus")
>> J'ai pas encore trouvé comment mettre le $ supplémentaire ceci dit, mais
>> ça te fait un bon sujet de recherche pour cette fin de journée :)
>>
>> Le 6 avr. 2018 à 14:40, Kevin Thiou a écrit :
>>
>> > bonjour,
>> >
>> > j'essai de faire un script qui récupère des infos sur les sessions
>> pppoe,
>> > pour les stocker dans un array.
>> >
>> > Déclaration de mes array
>> > :global LD1 {user="" ; interface="ether1"; operstatus="" ; admstatus="";
>> > upcounter=0}
>> > :global LM1 {user="" ; interface="ether1"; operstatus="" ; admstatus="";
>> > upcounter=0}
>> > :global LDV1 {user="" ; interface="ether1"; operstatus="" ;
>> admstatus="";
>> > upcounter=0}
>> > :global LV2 {user="" ; interface="ether1"; operstatus="" ; admstatus="";
>> > upcounter=0}
>> > :global LM2 {user="" ; interface="ether1"; operstatus="" ; admstatus="";
>> > upcounter=0}
>> > :global LDV2 {user="" ; interface="ether1"; operstatus="" ;
>> admstatus="";
>> > upcounter=0}
>> >
>> > Déclaration d'un array rassemblant mes logins
>> > :global LOGIN {"LD1"; "LM1"; "LDV1"; "LV2"; "LM2"; "LDV2"}
>> >
>> > boucle pour récupérer les infos
>> > :foreach i in $LOGIN do={:interface pppoe-client monitor $i once
>> do={:set
>> > ($i->"operstatus") $status}}
>> >
>> > Résultat, rien, ça ne fonctionne pas
>> >
>> > Une idée ?
>> >
>> > Merci
>> >
>> > ---------------------------
>> > Liste de diffusion du FRnOG
>> > http://www.frnog.org/
>>
>>
>

---------------------------
Liste de diffusion du FRnOG
http://www.frnog.org/


---------------------------
Liste de diffusion du FRnOG
http://www.frnog.org/

Répondre à