Usar grep para buscar intervalo de números [RESOLVIDO]

1. Usar grep para buscar intervalo de números [RESOLVIDO]

Flavio Figueiredo
flaviolf

(usa Outra)

Enviado em 07/11/2019 - 10:41h

Bom dia.
Preciso de um comando para buscar um intervalo de números específicos no começo da linha sobre um comando SNMP.
snmpbulkwalk -Osqn -c *** -v2c IP 1.3.6.1.4.1.5875.*.*.*.*.*.* | sed "s/.1.3.6.1.4.1.5875.*.*.*.*.*.*.//"
Ele me retorna uma sequencia de números desse jeito.
37578176 1
37678432 1
37778688 3
37778176 1
37878432 1
37878688 3
37978176 1
37978432 1
38978432 1
Portanto preciso pegar um intervalo desse 37678432 1 até esse 37978432 1, estou usando o comando | grep -E '^376|^379', mas ele só filtra os que começam com essa sequencia, precisava pegar o intervalo entre eles, mas filtrando só o começo, podia escrever todos, mas tem sequencias que me da 20 casas de diferença. Como eu poderia pegar essa sequencia, sendo que eu só conseguiria fazer funcionar com um script.sh.

Desde já agradeço



  


2. Re: Usar grep para buscar intervalo de números

Ryuk Shinigami
Ryuk

(usa Nenhuma)

Enviado em 07/11/2019 - 11:15h

comando | sed -n '/^376/,/^379/p' 

ou
sed -n '/^376/,/^379/p' arquivo 



3. Re: Usar grep para buscar intervalo de números [RESOLVIDO]

Flavio Figueiredo
flaviolf

(usa Outra)

Enviado em 07/11/2019 - 11:30h

Ryuk escreveu:

comando | sed -n '/^376/,/^379/p' 

ou
sed -n '/^376/,/^379/p' arquivo 


Obrigado pela resposta Ryuk, mas infelizmente não me retornou nada no comando, tentei de todas as formas tentando o comando e nenhuma me voltou resultado




4. Re: Usar grep para buscar intervalo de números [RESOLVIDO]

Ryuk Shinigami
Ryuk

(usa Nenhuma)

Enviado em 07/11/2019 - 11:35h

Aqui funcionou com o exemplo de saída que você postou!

Em vez de usar diretamente o direcionador | no comando, tenta primeiro jogar a saída para um arquivo e depois usa o sed (que passei) no arquivo para encontrar o que precisa.



5. Re: Usar grep para buscar intervalo de números [RESOLVIDO]

Marcelo Oliver
msoliver

(usa Debian)

Enviado em 07/11/2019 - 12:34h


flaviolf escreveu:

Bom dia.
Preciso de um comando para buscar um intervalo de números específicos no começo da linha sobre um comando SNMP.
snmpbulkwalk -Osqn -c *** -v2c IP 1.3.6.1.4.1.5875.*.*.*.*.*.* | sed "s/.1.3.6.1.4.1.5875.*.*.*.*.*.*.//"
Ele me retorna uma sequencia de números desse jeito.
37578176 1
37678432 1
37778688 3
37778176 1
37878432 1
37878688 3
37978176 1
37978432 1
38978432 1
Portanto preciso pegar um intervalo desse 37678432 1 até esse 37978432 1, estou usando o comando | grep -E '^376|^379', mas ele só filtra os que começam com essa sequencia, precisava pegar o intervalo entre eles, mas filtrando só o começo, podia escrever todos, mas tem sequencias que me da 20 casas de diferença. Como eu poderia pegar essa sequencia, sendo que eu só conseguiria fazer funcionar com um script.sh.

Desde já agradeço

Boa tarde, flaviolf.
Segue:
comando|grep -E '^37[6789]'
_________________________________________________________________
Importante: echo -e "$(lynx --dump goo.gl/a9KeFc|sed -nr '/^[ ]+Se/,/dou.$/p')"
Att.: Marcelo Oliver


6. Re: Usar grep para buscar intervalo de números [RESOLVIDO]

Flavio Figueiredo
flaviolf

(usa Outra)

Enviado em 07/11/2019 - 13:54h

Obrigado Marcelo
Mas acho que não expliquei bem, vi que vc pegou o intervalo no começo, mas no caso eu vou precisar pegar um intervalo diferente, com números diferentes, o final dele nem me interessa muito, mas as 4 primeiras casas são muito importantes.

36199168 1
37199424 1
38199680 1
39199936 1
40200192 1
41200448 1
42200704 1




7. Re: Usar grep para buscar intervalo de números [RESOLVIDO]

Marcelo Oliver
msoliver

(usa Debian)

Enviado em 07/11/2019 - 23:29h


flaviolf escreveu:

Obrigado Marcelo
Mas acho que não expliquei bem, vi que vc pegou o intervalo no começo,
mas no caso eu vou precisar pegar um intervalo diferente,
com números diferentes, o final dele nem me interessa muito, mas as 4 primeiras casas são muito importantes.

36199168 1
37199424 1
38199680 1
39199936 1
40200192 1
41200448 1
42200704 1

Flavio, poste um exemplo do que realmente deseja.
Esclareça o que negritei acima.
Att.: Marcelo Oliver


8. Re: Usar grep para buscar intervalo de números [RESOLVIDO]

Flavio Figueiredo
flaviolf

(usa Outra)

Enviado em 27/11/2019 - 09:41h

Bom dia desculpem a demora na resposta, mas deu certo

comando | grep -E '^37[6789]'

esse comando conseguiu resolver o problema. Vou encerrar o tópico aqui

Obrigado






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner
Linux banner
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts