Pular para o conteúdo

Procurar linhas que contenham uma certa quantidade do mesmo caracter em um arquivo TXT [RESOLVIDO]

Responder tópico
  • Denunciar
  • Indicar

1. Procurar linhas que contenham uma certa quantidade do mesmo caracter em um arquivo TXT [RESOLVIDO]

Enviado em 12/06/2018 - 23:51h

Boa noite pessoal!
Já procurei muito pela internet e ainda não encontrei o que quero, portanto venho pedir uma força aqui. Como já fica claro no título do tópico, gostaria de procurar por linhas em um arquivo TXT que contenham uma certa quantidade de caracteres ( uma certa quantidade do mesmo caracter). Tudo que acho na internet é usar algo parecido com:
egrep 'a{5}' Arquivo.txt  
para encontrar uma sequência de mesmos caracteres (aaaaa), porém não é o que eu quero. Veja o exemplo abaixo que se parece com o que estou procurando:

Conteúdo do arquivo TXT:
/home/usuario/debian/usr
/home/usuario/debian
/home/usuario/google
/home/usuario/gdrive/imagens/foto.jpg
/home/usuario/gdrive/documentos

Gostaria de usar um comando para obter uma resposta como a que segue:
2:/home/usuario/debian
3:/home/usuario/google

Ou seja, mostrar somente as linhas que tivessem a contagem de "/" (slash) igual a 3.

Responder tópico

2. Re: Procurar linhas que contenham uma certa quantidade do mesmo caracter em um arquivo TXT [RESOLVIDO]

Melhor resposta

Enviado em 13/06/2018 - 00:36h

globrother escreveu:

Boa noite pessoal!
Já procurei muito pela internet e ainda não encontrei o que quero, portanto venho pedir uma força aqui. Como já fica claro no título do tópico, gostaria de procurar por linhas em um arquivo TXT que contenham uma certa quantidade de caracteres ( uma certa quantidade do mesmo caracter). Tudo que acho na internet é usar algo parecido com:
egrep 'a{5}' Arquivo.txt  
para encontrar uma sequência de mesmos caracteres (aaaaa), porém não é o que eu quero. Veja o exemplo abaixo que se parece com o que estou procurando:

Conteúdo do arquivo TXT:
/home/usuario/debian/usr
/home/usuario/debian
/home/usuario/google
/home/usuario/gdrive/imagens/foto.jpg
/home/usuario/gdrive/documentos

Gostaria de usar um comando para obter uma resposta como a que segue:
2:/home/usuario/debian
3:/home/usuario/google

Ou seja, mostrar somente as linhas que tivessem a contagem de "/" (slash) igual a 3.
Boa noite.
Segue:
awk -F"/" 'NF==4 {print $0}' teste
/home/usuario/debian
/home/usuario/google

Obs.: Lista as linhas que tem 04 campos, ou 03 "/"
Att.:
Marcelo Oliver

3. Re: Procurar linhas que contenham uma certa quantidade do mesmo caracter em um arquivo TXT [RESOLVIDO]

Enviado em 13/06/2018 - 16:44h

msoliver escreveu:

Boa noite.
Segue:
awk -F"/" 'NF==4 {print $0}' teste
/home/usuario/debian
/home/usuario/google

Obs.: Lista as linhas que tem 04 campos, ou 03 "/"
Att.:
Marcelo Oliver
Perfeito Marcelo, serviu direitinho para o que eu queria. Muito obrigado mesmo. Passei horas tentando algo com o grep e não consegui.
A título de curiosidade, sabe dizer se consigo esse mesmo resultado com o grep?

Valeu! Abraço!

4. Re: Procurar linhas que contenham uma certa quantidade do mesmo caracter em um arquivo TXT [RESOLVIDO]

Enviado em 13/06/2018 - 17:58h

globrother escreveu:

msoliver escreveu:

Boa noite.
Segue:
awk -F"/" 'NF==4 {print $0}' teste
/home/usuario/debian
/home/usuario/google

Obs.: Lista as linhas que tem 04 campos, ou 03 "/"
Att.:
Marcelo Oliver
Perfeito Marcelo, serviu direitinho para o que eu queria.
Muito obrigado mesmo. Passei horas tentando algo com o grep e não consegui.
A título de curiosidade, sabe dizer se consigo esse mesmo resultado com o grep?

Valeu! Abraço!


Boa tarde, globrother.
Tem sim,
egrep -x '(/[a-z]+){3}$' texto
grep -E -x '(/[a-z]+){3}$' texto

/home/usuario/debian
/home/usuario/google


Se não for pedir muito . . .
Marque o tópico como resolvido...
E, se quiser me ajudar a ganhar um pontinhos...
Escolha a minha resposta como A MELHOR. :)

Abç.:
Marcelo Oliver

5. Re: Procurar linhas que contenham uma certa quantidade do mesmo caracter em um arquivo TXT [RESOLVIDO]

Enviado em 13/06/2018 - 20:45h

msoliver escreveu:
Boa tarde, globrother.
Tem sim,
egrep -x '(/[a-z]+){3}$' texto
grep -E -x '(/[a-z]+){3}$' texto

/home/usuario/debian
/home/usuario/google


Se não for pedir muito . . .
Marque o tópico como resolvido...
E, se quiser me ajudar a ganhar um pontinhos...
Escolha a minha resposta como A MELHOR. :)

Abç.:
Marcelo Oliver
Muito bom. Vou estudar mais expressões regulares.
Tá pedindo pouco ainda... Kiakkkk! Obrigado!

Abraço,
Cleber Gobira

Responder tópico

Responder tópico

Entre na sua conta para responder.

Fazer login para responder