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

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

Re: [shell-script] acesso a arquivo a partir de outro


From: Julio C. Neves
Subject: Re: [shell-script] acesso a arquivo a partir de outro
Date: Thu, 20 Dec 2012 17:07:15 -0200

Leandro,
é bom vc procurar entender um pouco de expressões regulares, pois vou te
explicar mas não vai adiantar muito no contexto da sua vida profissional.

[[:alnum:]] - qualquer um dentre todos os caracteres alfanuméricos;
[[:alnum:]]* - vários desses caracteres juntos;
[[:alnum:]]*| - vários caracteres alfanuméricos seguidos de uma barra.

Repare que coloquei 3 vezes esse último, antes dos números de arq1, que por
sua vez ficarão entre barras. Desta forma criei uma expressão regular para
o grep procurar:

qq coisa|qqcoisa|qqcoisa|cada num de arq1|

Abcs,
Julio

*
*


Em 20 de dezembro de 2012 11:30, Leandro Valiengo <
address@hidden> escreveu:

> **
>
>
> Muito obrigado A TODOS que me auxiliaram.
>
> Julio, essa sintaxe ":alnum:" é algo como "procurar a partir da quarta
> barra?"
>
> ________________________________
> De: Julio C. Neves <address@hidden>
> Para: address@hidden
> Enviadas: Quarta-feira, 19 de Dezembro de 2012 21:34
> Assunto: Re: [shell-script] acesso a arquivo a partir de outro
>
> Aê Leandro,
> é só melhorar um pouco a expressão regular:
>
> $ grep -f <(sed 's/^/[[:alnum:]]*|[[:alnum:]]*|[[:alnum:]]*|/; s/$/|/'
> arq1) arq2 > arq3
>
> Abcs,
> Julio
>
> *
> *
>
> Em 19 de dezembro de 2012 17:01, Leandro Valiengo <
> address@hidden> escreveu:
>
> > **
> >
> >
> > Prezados,
> >
> > me desculpe mas acabei de perceber q em dois exemplos tive o cliente do
> > arquivo1 em outra posiçao do arquivo2.
> >
> > entao para fechar com chave de ouro, preciso que seja na quarta
> posiçao...
> >
> > Recapitulando:
> >
> > arquivo1
> > |28594|
> >
> > arquivo2
> >
> > 201202|12|LOTE 12|28594|450|F|FATURAMENTO|N|NORMAL|
> >
> > Muito obrigado a todos que estao me ajudando...estou respondendo ao
> ultimo
> > somente pois quando conecto a VPN nao acesso a internet...to pegando só o
> > ultimo.
> >
> > abs a todos.
> >
> > ________________________________
> > De: Julio C. Neves <address@hidden>
> > Para: address@hidden
> > Enviadas: Quarta-feira, 19 de Dezembro de 2012 16:27
> > Assunto: Re: [shell-script] acesso a arquivo a partir de outro
> >
> >
> >
> > Leandro,
> > pelo que entendi, os números do arquivo2 estarão sempre entre barras.
> > Então, para evitar um casamento parcial, vamos colocar todos entre
> barras.
> > Veja:
> >
> > $ sed -i 's/^/|/;s/$/|/' arq1
> > julio@NetB-Julio:~/tstsh$ cat arq1
> > |39487|
> > |40508|
> > |44080|
> > |20948|
> >
> > Agora basta fazer:
> >
> > grep -f arq1 arq2 > arq3
> >
> > Ou, se vc quiser fazer tudo em somente uma linha, faça:
> >
> > $ grep -f <(sed 's/^/|/;s/$/|/' arq1) arq2 > arq3
> >
> > Conforme vc pode ver, um problema com um certo grau de dificuldade para
> se
> > resolver em qq linguagem, torna-se um simples one-liner em Shell.
> >
> > Abcs,
> > Julio
> >
> > *
> > *
> >
> > Em 19 de dezembro de 2012 15:48, Leandro Valiengo <
> > address@hidden> escreveu:
> >
> > > 39487
> > > 40508
> > > 44080
> > > 20948
> > >
> >
> > [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]
>
> ------------------------------------
>
> ----------------------------------------------------------
> 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
>
> [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]