+ Responder ao Tópico



  1. #1

    Padrão variável do tipo matrix

    Será que alguem sabe como lidar com variáveis tipo matrix no mikrotik. Preciso criar uma variavel dessa e alterar os valores mas nao consigo. Estou tentando resolver um problema de clonagem de mac e tenho uma ideia de como fazer isso mas primeiro preciso conseguir manipular esse tipo de variavel. Criar ler e alterar valores dela. Quem se habilita a me ajudar?

  2. #2

    Padrão Re: variável do tipo matrix

    Citação Postado originalmente por sebalemes Ver Post
    Será que alguem sabe como lidar com variáveis tipo matrix no mikrotik.
    Boa noite.

    Farei comentários considerando testes usando MikroTik RouterOS 5.12.

    O array do MikroTik RouterOS é unidirecional, ou seja, você não consegue forma matriz nativamente como em outras linguagens. Entretanto, parece ser possível fazer, de forma não nativa, um vetor de vetores, ou seja, uma array de arrays, resultando numa (pseudo) matriz nativa.

    Supondo que você tem os seguintes arrays:
    Código :
    VX { 0, 1, 2, 3, 4 }
    VY { 5, 6, 7, 8, 9 }
    VZ { A, B, C, D, E }
    Se você criar um array de outros arrays...
    Código :
    VW {VX, VY, VZ}
    Logo, você terá a seguinte "matriz"
    Código :
    {
        { 0, 1, 2, 3, 4 };
        { 5, 6, 7, 8, 9 };
        { A, B, C, D, E };
    }
    Você pode fazer isso usando a contatenação, para criar manualmente arrays multidimensionais, conforme descreve a documentação[1].

    "," concatenates two arrays or adds element to array :put ({1;2;3} , 5 );
    Particularmente, penso que quanto menos código eu colocar dentro do RouterOS, melhor. Faço tudo o que preciso usando Python[2], e Paramiko[3]. Tem tópico[4] aqui no Under-Linux sobre isso.

    Enfim, espero ter auxiliado de alguma forma.

    [1] http://wiki.mikrotik.com/wiki/Manual...lobal_commands
    [2] http://www.python.org
    [3] http://www.lag.net/paramiko
    [4] https://under-linux.org/f143/registrando-log-149969/

    Saudações,

    Trober
    -
    -
    -
    -
    -

  3. #3

    Padrão Re: variável do tipo matrix

    Obrigado! Vou dar uma olhada njo material, mas ainda tenho uma duvida: como altero o valor das variáveis?

  4. #4

    Padrão Re: variável do tipo matrix

    Citação Postado originalmente por sebalemes Ver Post
    ...como altero o valor das variáveis?
    Bom dia.

    Você não conseguirá alterar o valor dentro do array já construído, informando a coordenada X e Y (como normalmente faria numa matriz C, Java, Python). Você precisa reconstruir toda a matriz novamente, alterando os valores na reconstrução. Para isso, use toarray, conforme demonstrado no exemplo[1] do Wiki oficial da MikroTik.

    [1] http://wiki.mikrotik.com/wiki/Script...ay_of_the_week

    Saudações,

    Trober
    -
    -
    -
    -
    -