Pegar linhas especificas de um arquivo depois de uma variável inicial [RESOLVIDO]

1. Pegar linhas especificas de um arquivo depois de uma variável inicial [RESOLVIDO]

Anthony José Alves Januário Cardoso
anthonyjanuario

(usa Ubuntu)

Enviado em 07/02/2020 - 09:55h

Bom eu queria que quando eu pesquisasse por um serie por nome, o script mostrasse o Nome e mais as proximas 4 linhas, pra exibir algo como:
Nome: Breaking Bad
Genero: Drama
Sinopse: ...
Ano: 2020
Diretor: Vince

com o grep mostra somente a linha do nome, tentei usar teil e head, mas não consegui colocar a variavel informada pelo user como valor inicial pro head comecar daquela linha...

cadastrar(){
clear
printf "Informe os dados da série:\n"
echo -n "Nome: "
read nome
echo -n "Gênero: "
read genero
echo -n "Sinopse: "
read sinopse
echo -n "Ano de Lançamento: "
read ano
echo -n "Diretor: "
read diretor

printf "Nome: $nome \n" >> $salvo
printf "Gênero: $genero \n" >> $salvo
printf "Sinopse: $sinopse \n" >> $salvo
printf "Ano de Lançamento: $ano \n" >> $salvo
printf "Diretor: $diretor \n" >> $salvo
echo -e "\n ---------- \n" >> $salvo


pesquisar(){
echo
echo "Digite o nome da série para pesquisar: "
read pesquisar_nome
echo -e "Resultados"
grep -i $pesquisa_nome $salvo

menu
}


** salvo seria o documento onde estou salvando os dados ( salvo=cadastros.txt)
Agradeço :)


  


2. MELHOR RESPOSTA

Matheus
pylm

(usa Gentoo)

Enviado em 07/02/2020 - 10:02h


grep -i4 "breaking bad" arquivo


O -i é pra deixar case insentitve, a parte importante é o 4 ali que mostra 4 linhas abaixo do resultado.

3. Re: Pegar linhas especificas de um arquivo depois de uma variável inicial [RESOLVIDO]

Anthony José Alves Januário Cardoso
anthonyjanuario

(usa Ubuntu)

Enviado em 07/02/2020 - 10:17h

pylm escreveu:


grep -i4 "breaking bad" arquivo


O -i é pra deixar case insentitve, a parte importante é o 4 ali que mostra 4 linhas abaixo do resultado.


Acho que eu me expressei errado, o Breaking Bad foi so um exemplo....
Eu quero que o ponto inicial seja a variável $pesquisar_nome que vai ser o nome da serie que o user vai digitar..

Edit: Obrigado, entendi agora o que quis dizer, substitui o valor entre aspas pela variavel e deu certo. Obrigado cara :)






4. Re: Pegar linhas especificas de um arquivo depois de uma variável inicial [RESOLVIDO]

Marcelo Oliver
msoliver

(usa Debian)

Enviado em 07/02/2020 - 23:58h


pylm escreveu:


grep -i4 "breaking bad" arquivo


O -i é pra deixar case insentitve, a parte importante é o 4 ali que mostra 4 linhas abaixo do resultado.

Boa noite pylm.
Um detalhe.
Para "mostrar" as linhas após o "padrão", usa-se -A4, after.
-i4, ao menos aqui, funciona como o -C.

Att.: Marcelo Oliver
______________________________________________________________________






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts