+ Responder ao Tópico



  1. #1
    hanaga
    Visitante

    Padrão Bash: localizar caractere em variavel

    Pessoal,

    Estou querendo armazenar parte dos resultados que o 'ping' apresenta em variaveis, da seguinte forma:

    # capturando apenas a linha que inicia como "rtt"
    rtt_servidor=`ping -c 5 192.168.0.1 -s 1024 | grep rtt`

    echo $rtt_servidor

    o script mostra:

    rtt min/avg/max/mdev = 14.920/17.888/22.126/3.075 ms

    Esse resultado eu gostaria de isolar em outras 2 variaveis somente o valor para 'avg' e 'max'.

    no caso, os valores 17.888 ms para avg e 22.126 ms para max

    Alguem saberia me dizer como isolar estes valores em outras 2 variaveis?

    Tentei atraves do "cut" porem como os valores mudam bastante, se eu tiver uma respota com 3 casas antes do "." (ponto), como num ping onde a reposta seja mais alta, tipo 200.5 ms ou até 1000 ms...nao ficaria legal com o "cut" pois muda o numero da linha onde o valor esta sendo apresentado e voce acaba pegando errado.

    Imagino que tenha como pegar esses valores buscando o lugar deles pela " / ", fazendo um contador que pega somente o valor apos a quarta / e apos a quinta /.

    Alguem sabe como fazer ???

    Obrigado,

    []'s Tiago

  2. #2
    Arkanoid
    Visitante

    Padrão Bash: localizar caractere em variavel

    Bem, vc pode tentar isso com o cut assim:
    Código :
    echo $rtt_servidor | cut -f 4 -d ' ' | cut -f 2 -d /
    Mudando o valor 2 do último cut pra 3 vc pega o valor max ao invés de avg.

  3. #3
    hanaga
    Visitante

    Padrão Bash: localizar caractere em variavel

    Arkanoid,

    Muito obrigado, era isso mesmo !! Valeu :D

    []'s Tiago

  4. #4

    Padrão Bash: localizar caractere em variavel

    fiquei curioso para saber a finalidade de tal script??