Criação Bash [RESOLVIDO]

1. Criação Bash [RESOLVIDO]

thiago
lacerdat25

(usa Red Hat)

Enviado em 12/05/2019 - 21:07h

Olá galera!!

Preciso de uma ajuda. Estou criando um plugin que coleta as informações de rede de um roteador.
Como: IP, INTERFACE, STATUS, LATENCIA, JITTER e PACKTLOSS.

Essas coletas serão via SNMPWALK. Tendo em vista que vou pesquisar por uma string chamada "PING", já tenho um OID especifico. O problema que tenho, e que como temos várias localidades, e essa STRING PING pode ser de OID diferente ou seja, aqui tenho a OID 1 e 2 em outra localidade 5 e 7.

Abaixo segue o comando que estou coletando somente o valor final das OIDs
snmpwalk -v2c -c comunidade IP .1.3.6.1.4.1.12356.101.4.9.2.1.2 | grep STRING | grep PING | awk '{print $1}' | cut -c45,46

Minha dúvida é: Com eu salvo os valores da coleta acima em 2 variáveis? O valor do comando acima retorna 2 valores.

EX:
Dei o comando: snmpwalk -v2c -c comunidade IP .1.3.6.1.4.1.12356.101.4.9.2.1.2 | grep STRING | grep PING | awk '{print $1}' | cut -c45,46
RETORNO: 1 2

Var1 = 1
Var2= 2

Assim que eu obtiver a variável, posso tentar criar o comando que diferencia 1 da 2 fazendo uma condicional.
EX:
snmpwalk -v2c -c comunidade IP .1.3.6.1.4.1.12356.101.4.9.2.1.2.$VAR1 | grep STRING | grep PING | awk '{print $1}' | cut -c45,46

Obrigado!!


  


2. Re: Criação Bash [RESOLVIDO]

Marcelo Oliver
msoliver

(usa Debian)

Enviado em 13/05/2019 - 16:42h


lacerdat25 escreveu:

Olá galera!!

Preciso de uma ajuda. Estou criando um plugin que coleta as informações de rede de um roteador.
Como: IP, INTERFACE, STATUS, LATENCIA, JITTER e PACKTLOSS.

Essas coletas serão via SNMPWALK. Tendo em vista que vou pesquisar por uma string chamada "PING", já tenho um OID especifico. O problema que tenho, e que como temos várias localidades, e essa STRING PING pode ser de OID diferente ou seja, aqui tenho a OID 1 e 2 em outra localidade 5 e 7.

Abaixo segue o comando que estou coletando somente o valor final das OIDs
snmpwalk -v2c -c comunidade IP .1.3.6.1.4.1.12356.101.4.9.2.1.2 | grep STRING | grep PING | awk '{print $1}' | cut -c45,46

Minha dúvida é: Com eu salvo os valores da coleta acima em 2 variáveis?
O valor do comando acima retorna 2 valores.

EX:
Dei o comando: snmpwalk -v2c -c comunidade IP .1.3.6.1.4.1.12356.101.4.9.2.1.2 | grep STRING | grep PING | awk '{print $1}' | cut -c45,46
RETORNO: 1 2

Var1 = 1
Var2= 2

Assim que eu obtiver a variável, posso tentar criar o comando que diferencia 1 da 2 fazendo uma condicional.
EX:
snmpwalk -v2c -c comunidade IP .1.3.6.1.4.1.12356.101.4.9.2.1.2.$VAR1 | grep STRING | grep PING | awk '{print $1}' | cut -c45,46

Obrigado!!

Boa tarde Lacerda.
Poste a saída do comando:
snmpwalk -v2c -c comunidade IP .1.3.6.1.4.1.12356.101.4.9.2.1.2 

E informe o que deseja, nas variáveis:
Var1 e Var2.

Att.: Marcelo Oliver


3. Criação Bash

thiago
lacerdat25

(usa Red Hat)

Enviado em 13/05/2019 - 16:53h

Olá Oliver!

O retorno do comando é
1
2

Quero colocar essas números em variáveis distintas,
variável1 = 1
variável2 = 2

Como expliquei acima, como são várias localidades, esse retorno pode ter outros valores. A finalidade de fazer essa colega o armazenar em 2 variáveis é automatizar a coleta.

Obrigado!


4. Re: Criação Bash [RESOLVIDO]

Marcelo Oliver
msoliver

(usa Debian)

Enviado em 13/05/2019 - 17:36h


lacerdat25 escreveu:

Olá Oliver!

O retorno do comando é
1
2

Quero colocar essas números em variáveis distintas,
variável1 = 1
variável2 = 2

Como expliquei acima, como são várias localidades, esse retorno pode ter outros valores. A finalidade de fazer essa colega o armazenar em 2 variáveis é automatizar a coleta.
Obrigado!

Ok Lacerda,
Poste por favor a saída do comando:
snmpwalk -v2c -c comunidade IP .1.3.6.1.4.1.12356.101.4.9.2.1.2
Completo, a intenção é otimizar os filtros e atribuir os valores para as variáveis.
No aguardo,
Marcelo Oliver


5. Criação Bash

thiago
lacerdat25

(usa Red Hat)

Enviado em 13/05/2019 - 21:38h

Oliver,

Consegui resolver o problema com o comando head e tail.

Muito obrigado pela ajuda!

Sou iniciante no mundo linux, não tenho muito conhecimento sobre o mesmo, mas estou curtindo muito o sistema!

segue abaixo:
VAR1=$(snmpwalk -v2c -c comunidade IP .1.3.6.1.4.2.12356.101.4.9.3.1.2 | grep "STRING" | grep "PING" | awk '{print $1}' | cut -c45,46 | head -1)
VAR2=$(snmpwalk -v2c -c comunidade IP .1.3.6.1.4.2.12356.101.4.9.3.1.2 | grep "STRING" | grep "PING" | awk '{print $1}' | cut -c45,46 | head -2 | tail -1)

Comando que eu receberia seria os valores 1 e 2, que eu iria armazenar as variáveis.

Obrigado mestre!!


6. Re: Criação Bash [RESOLVIDO]

Marcelo Oliver
msoliver

(usa Debian)

Enviado em 14/05/2019 - 17:17h


lacerdat25 escreveu:

Oliver,

Consegui resolver o problema com o comando head e tail.

Muito obrigado pela ajuda!

Sou iniciante no mundo linux, não tenho muito conhecimento sobre o mesmo, mas estou curtindo muito o sistema!

segue abaixo:
VAR1=$(snmpwalk -v2c -c comunidade IP .1.3.6.1.4.2.12356.101.4.9.3.1.2 | grep "STRING" | grep "PING" | awk '{print $1}' | cut -c45,46 | head -1)
VAR2=$(snmpwalk -v2c -c comunidade IP .1.3.6.1.4.2.12356.101.4.9.3.1.2 | grep "STRING" | grep "PING" | awk '{print $1}' | cut -c45,46 | head -2 | tail -1)

Comando que eu receberia seria os valores 1 e 2, que eu iria armazenar as variáveis.
Obrigado mestre!!

Boa tarde Lacerda, não tem o que agradecer.... Nem te ajudei......
Para te AJUDAR, eu preciso da SAÍDA do COMANDO:
snmpwalk -v2c -c comunidade IP .1.3.6.1.4.2.12356.101.4.9.3.1.2  

Acredito que de para simplificar o seu comando... vejo que tem muitos direcionamentos...

Att.: Marcelo Oliver






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts