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

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

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


From: Moacir Souza
Subject: Re: [Bulk] Re: [shell-script] intersecção entre dois arquivos
Date: Mon, 18 Jan 2010 14:12:47 -0200

     Pedro,

     Só a expressão do grep que está incorreta. Veja a seguir que a dica de
Bruno funciona bem:

$ cat a
30
72
183
427
1298
1315
2008
2794
5825

$ cat b
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

 $ for i in $(cat a); do grep $i b; done
30 Zezinho das Couves 07/2004 15/09/68
427 Maria do Zé 03/2002 22/03/81
22 Joao da Silva 12/2008 22/01/77

     Mas pode ficar mais precisa com a adição de um circunflexo na expressão
do grep:

$ for i in $(cat a); do grep "^$i" b; done
30 Zezinho das Couves 07/2004 15/09/68
427 Maria do Zé 03/2002 22/03/81

     No primeiro exemplo, a terceira linha apareceu por causa da string 2008
no arquivo "a" (que casou com 12/2008 na linha de Joao da Silva). No segundo
você só casa os números do arquivo "a" com os números que iniciam as linhas
do arquivo "b".

[]'s,
Moacir Filho

-- 
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
Moacir da Cruz Souza Filho

-Analista de Sistemas: Suporte Unix Avançado
Serviço Federal de Processamento de Dados

-Mestrando em Ciências da Computação
Universidade de Brasília

-Bacharel em Engenharia da Computação
Escola Politécnica de Pernambuco
Universidade de Pernambuco

-Técnico em Eletrônica
Escola Técnica Federal de Pernambuco

-Linux user #449600
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=


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



reply via email to

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