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: microbiu
Subject: Re: [shell-script]intersecção entre dois arquivos
Date: Mon, 18 Jan 2010 18:44:05 +0000

 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]



reply via email to

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