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

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

Re: [shell-script]intersecção entre dois arquivos


From: Ronie Marcio M. C. Coelho
Subject: Re: [shell-script]intersecção entre dois arquivos
Date: Mon, 18 Jan 2010 17:55:35 -0200

Ordene os dois arquivos com o sort  e depois use o join -t " " arquivo1 
arquivo2 .


Ronie Marcio


From: address@hidden 
Sent: Monday, January 18, 2010 4:44 PM
To: address@hidden 
Subject: Re: [shell-script]intersecção entre dois arquivos


  
Com o uso de:
$ for i in $(cat a.txt); do grep "^$i" b.txt; done
Poderia haver herro pois procurando linhas começadas por "20"
traria também linhas começadas por "20.*"
Eu sempre ponho o caracter subsequente (espaço ou tab) pra evitar
destruição sumária de ambientes produtivos por conta de scripts.
=P
$ for i in $(cat a.txt); do grep "^$i " b.txt; done
Eric
PS um erro sem H num é um herro realmente herrado.
On Seg 18/01/10 14:46 , Bruno Gunter address@hidden sent:"
Ricardo, assim não funcionaria, pois você está "grepando" tudo
menos a
ocorrência desejada (o -v do grep).
Do man do próprio grep:
-v, --invert-match
Invert the sense of matching, to select non-matching
lines. (-v is specified by POSIX.)
[]'s
Gunter
Em Seg, 2010-01-18 às 14:32 -0200, ®i©@®ÐØ escreveu:
> se bem que pode ser assim também:
> $ for i in $(cat a); do grep -v "$i" b; done
> 
> 
> 2010/1/18 Pedro Pardini 
> 
> >
> >
> > Fala, Julio.
> > Obrigado pela dica e pelo puxão de orelha. Minhas humildes
desculpas!!
> > Eu realmente esqueci de postar minhas tentativas.
> >
> > Mas, eu estava mesmo esbarrando no uso do circunflexo, como
disse o Moacir.
> > Eu nem tinha lembrado do xargs também, como vc sugeriu!
> >
> > Valeu, pessoal! Mistério resolvido!
> >
> > P.S. - Da próxima, vou me lembrar de postar minhas tentativas.
> >
> > Abraços a todos!!
> >
> > Pedro Pardini
> >
> >
> > On segunda-feira18/01/10 18/01/10 - 14:11, Julio C. Neves wrote:
> > > Fala Pedro,
> > > isso é muito simples mas assim mesmo vc não mostrou as suas
tentativas.
> > Não
> > > é do meu hábito responder a pessoas que não mostraram que
tentaram e não
> > > conseguiram, no entanto como já responderam e um deles foi
meu aluno há
> > > pouco tempo e não deve estar habituado com esses
procedimentos, vou te
> > dar
> > > uma proposta de solução, mas aproveitando a oportunidade
para solicitar
> > aos
> > > colegas de lista que só respondam a perguntas de pessoas que
mostrma que
> > > tentaram e não conseguiram.
> > >
> > > Uma coisa é ajudar, outra é resolver o problema do cara. No
primeiro
> > caso,
> > > vc ensina a pescar, na outra dá o peixe.
> > >
> > > Pedro, se vc tivesse visto o cmd grep com carinho (vc disse
que tentou
> > com
> > > grep) veria que a opção -f define um arquivo de expressões
regulares qu
> > vc
> > > irá pesquisar em outro arquivo. Então bastaria fazer:
> > >
> > > grep -f arq1 arq2
> > >
> > > Difícil, né?
> > >
> > > No entanto vc está procurando somente no início da linha.
Então por
> > > segurança vc poderia fazer:
> > >
> > > grep -f > >
> > > Abraços,
> > > Julio
> > > Cursos de Shell e Zenity em 2 fins de semana?
> > > - Em SP ligue (11)2125-4747;
> > > - Em DF ligue (61) 3223-3000;
> > > - Turmas fechadas em outras cidades ligue (21) 8112-9988.
> > >
> > >
> > >
> > > 2010/1/18 Pedro Pardini
> > >
> > >
> > >
> > >>
> > >> Olá, amigos.
> > >> Um Feliz 2010 a todos... Meio atrasado!!! - Voltei hoje das
férias :)
> > >>
> > >> Alguém poderia me ajudar com este script?
> > >>
> > >> Tenho dois arquivos txt:
> > >> arq1:
> > >> 30
> > >> 72
> > >> 183
> > >> 427
> > >> 1298
> > >> 1315
> > >> 2008
> > >> 2794
> > >> 5825
> > >> ....
> > >>
> > >> arq2:
> > >> 22 Joao da Silva 12/2008 22/01/77
> > >> 30 Zezinho das Couves 07/2004 15/09/68
> > >> 427 Maria do Zé 03/2002 22/03/81
> > >> 428 Jubencio da Zinha 10/2007 28/06/64
> > >> ....
> > >>
> > >> Preciso obter todas as linhas do arquivo arq2 cuja primeira
coluna
> > >> encontre elemento coincidente no arq1.
> > >> Como se faz isto??? Já tentei grep, sed, mas acho que não
estou sabendo
> > >> construir a lógica do comando.
> > >>
> > >> Abraços
> > >>
> > >>
> > >>
> > >>
> > >
> > > [As partes desta mensagem que não continham texto foram
removidas]
> > >
> > >
> > >
> > > ------------------------------------
> > >
> > > ----------------------------------------------------------
> > > Esta lista não admite a abordagem de outras liguagens de
programação,
> > como perl, C etc. Quem insistir em não seguir esta regra será
moderado sem
> > prévio aviso.
> > > ----------------------------------------------------------
> > > Sair da lista: address@hidden
> > > ----------------------------------------------------------
> > > Esta lista é moderada de acordo com o previsto em
> > http://www.listas-discussao.cjb.net [1]
> > > ----------------------------------------------------------
> > > Servidor Newsgroup da lista: news.gmane.org
> > > Grupo: gmane.org.user-groups.programming.shell.brazil
> > >
> > > Links do Yahoo! Grupos
> > >
> > >
> > >
> > >
> >
> > 
> >
> 
> 
> 
> -- 
> ----------------------------------------------------------
> ATENÇÃO: EVITE QUE SPAMMERS CAPTURE CONTATOS DE SUA LISTA,
> SEMPRE QUE POSSÍVEL REMOVA OS EMAILS DO REMETENTE E ENVIE EM
(COO- CÓpia
> Oculta) PARA SEUS CONTATOS.
> ;)
> 
> A Graça do nosso Senhor Jesus Cristo seja contigo. (1ªTs 5.28)
> The grace of our Lord Jesus Christ be with you. (1ªTs 5.28)
> Jesus te ama, aceite-O! Jesus loves you, accept you Him!
> 
> ®i©@®ÐØ
> 
> 
> [As partes desta mensagem que não continham texto foram
removidas]
> 
> 
> 
> ------------------------------------
> 
> ----------------------------------------------------------
> Esta lista não admite a abordagem de outras liguagens de
programação, como perl, C etc. Quem insistir em não seguir esta
regra será moderado sem prévio aviso.
> ----------------------------------------------------------
> Sair da lista: address@hidden
> ----------------------------------------------------------
> Esta lista é moderada de acordo com o previsto em
http://www.listas-discussao.cjb.net [2]
> ----------------------------------------------------------
> Servidor Newsgroup da lista: news.gmane.org
> Grupo: gmane.org.user-groups.programming.shell.brazil
> 
> Links do Yahoo! Grupos
> 
> 
[As partes desta mensagem que não continham texto foram removidas]


[As partes desta mensagem que não continham texto foram removidas]





[As partes desta mensagem que não continham texto foram removidas]



reply via email to

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