[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [shell-script] Concatenando dois arquivos
From: |
jimmy |
Subject: |
Re: [shell-script] Concatenando dois arquivos |
Date: |
Thu, 25 Sep 2008 17:36:26 -0300 |
User-agent: |
Mutt/1.4.2.3i |
tenta:
# redirecionar para C o que existe em A e não em B
$ comm -23 A B > C
# apensar o arquivo C em B
$ sed '$r C' B
On Thu, Sep 25, 2008 at 05:26:51PM -0300, Paulo Soares Drumond wrote:
> Flávio,
>
> Obrigado, mas talvez eu tenha simplificado demais meu problema. Eu não
> poderei simplesmente criar um arquivo final único com o sort.
>
> Os meus arquivos em questão são dois smbpasswd em duas máquinas
> distintas, que preciso "sincronizar". Mas há alguns usuários no
> arquivo B (o smbpasswd destino) que precisam ser preservados. Porém,
> como estes arquivos foram criados separadamente (apesar dos usuários
> serem, em sua maioria, os mesmos), algumas entradas de usuários em A
> diferem das entradas em B.
>
> Assim, primeiro, preciso tirar as linhas idênticas para depois
> verificar as entradas iguais e manter apenas a entrada que vem de A.
> Ou, eu precisaria agora de um segundo passo para eliminar as entradas
> de usuários duplicadas.
>
> Paulo
>
> 2008/9/25 Flavio Junior <address@hidden>:
> > sort -u arq1 arq2 > arqfinal
> >
> > --
> >
> > Flávio do Carmo Júnior aka waKKu
> >
> > 2008/9/25 Paulo Soares Drumond <address@hidden>:
> >
> >> Pessoal,
> >>
> >> Tenho quase certeza de que este tema já foi citado aqui - e mais de
> >> uma vez - mas procurei muito nos arquivos da lista e não encontrei
> >> (talvez por não usar a palavra correta).
> >>
> >> Tenho dois arquivos A e B e preciso incluir os dados de A em B.
> >> Portanto, como resultado final, o arquivo B terá seus registros e mais
> >> os registros de A. O detalhe é que o arquivo B já terá algumas de suas
> >> linhas iguais às linhas de A. Qual comando uso para, de cara, eliminar
> >> as linhas de A já presentes em B?
> >>
> >> Ex:
> >> -- Arq A
> >> Joao:4444
> >> Pedro:1111
> >> Maria:2222
> >> Jose:3333
> >> Lucas:5555
> >> Mateus:2312
> >>
> >> -- Arq B
> >> Joao:4444
> >> Pedro:1111
> >> Levi:1234
> >> Maria:2222
> >> Moises:4232
> >>
> >> Neste caso, o arquivo final deveria ser:
> >> Joao:4444
> >> Pedro:1111
> >> Levi:1234
> >> Maria:2222
> >> Moises:4232
> >> Jose:3333
> >> Lucas:5555
> >> Mateus:2312
> >>
> >> A ordem das linhas no arquivo final é indiferente no meu caso.
> >>
> >> Obrigado,
> >>
> >> Paulo
>
> ------------------------------------
>
> ---------------------------------------------------------------------
> 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
> ---------------------------------------------------------------------
> Servidor Newsgroup da lista: news.gmane.org
> Grupo: gmane.org.user-groups.programming.shell.brazil
>
> Links do Yahoo! Grupos
>
_______________________________________________________________________________