shell-script-pt
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [shell-script] Script que cria um novo poema


From: Julio C. Neves
Subject: Re: [shell-script] Script que cria um novo poema
Date: Mon, 31 Aug 2015 23:02:14 -0300

Fala Leslie,
tudo em paz por aí?

Me ocorreu agora, já que o grep caça expressões regulares de fazer um grep só, usando o operador | de regexp, veja:

grep -Ei '^(Uma certeza incerta|Não se ilude|Do que eu não sou)$' poesias.txt

Isso ainda permite que ele pegue a 1ª e 2ª (e/ou 3ª, 4ª, ...) usando a opção -A.

Para pegar as linhas 1, 5 e 9, fazemos:
$ seq 12 | grep -E '^(1|5|9)$'
1
5
9

Para pegar as mesmas linhas, porém mais duas subsequentes, faríamos:
$ seq 12 | grep -EA2 '^(1|5|9)$'
1
2
3
--
5
6
7
--
9
10
11

Leslie, muito juízo, porém com bastante gelo... ;) Abração, amigo

Abcs,
Julio
@juliobash

P
róximos cursos de Shell
Cidade         Local Período
São Paulo 4Linux 21/09 a 25/09
Rio de Janeiro EDX 05/10 a 09/10
São Paulo 4Linux 07/12 a 11/12
Dou treinamento de Shell em qualquer cidade.
Para mais detalhes, me mande um e-mail.


Em 31 de agosto de 2015 16:04, Leslie Watter address@hidden [shell-script] <address@hidden> escreveu:
 

faça 3 greps, cada um com uma parte da frase que vc sabe que tem
assim, combinando os resultados não vai encontrar mesmo.

Att,

LEslie

2015-08-30 16:54 GMT-03:00 address@hidden [shell-script] <address@hidden>:
 

Pessoal estou criando um script que faz o seguinte...


Existem 3 arquivos txt, cada um deles com um nome (nome do poema), e cada arquivo tem um poema dentro.

Esses 3 arquivos estão compactados em um arquivo chamado poemas.tar

Eu quero fazer um script que faz o seguinte, pegar uma frase de cada poema (que está dentro do poemas.tar) e crie um arquivo txt novo contendo as 3 frases, uma em baixo da outra, depois esse txt será compactado. Estou usando o grep, mas não está dando muito certo, veja o script...



#!/bin/bash

ARQUIVOS=`tar -tf poemas.tar`

tar -xf poemas.tar

for i in $ARQUIVOS; do

GREP=`grep -i "Uma certeza incerta Não se ilude Do que eu não sou." $i`

echo $GREP

if [ "$GREP" == "" ]; then

echo "Erro"

else

cat $i >> poema_final.txt

fi

done

gzip -9 poema_final.txt



Um dos txt que está dentro do arquivo poemas.tar possui a frase "Uma certeza incerta" outro arquivo possui a frase "Não se ilude" e o outro arquivo possui a frase "Do que eu não sou."


Quero que gere o arquivo poema_final.txt com o seguinte resultado:


Uma certeza incerta

Não se ilude

Do que eu não sou.





--
Leslie H. Watter



reply via email to

[Prev in Thread] Current Thread [Next in Thread]