se você não tiver memória suficiente para alocar a saída do primeiro cat,
não dará certo
não funciona em todos os casos

Em 7 de maio de 2010 17:48, Arkanon <arka...@lsd.org.br> escreveu:

>
>
> Oi de novo.
>
> Não sei se ja rolou alguma conversa sobre exatamente isso aqui. De
> qualquer forma, eh uma aplicacao de uma caracteristica do bash que eu
> acho q vale a pena ser referenciada e, eventualmente, discutida. Eh
> mais uma forma de transformar dois comandos num so.
>
> <http://www.dicas-l.com.br/dicas-l/20050222.php>
>
> A dica do Júlio do uso de process substitution (uma aplicacao
> implicita de named pipes) pode simplificar um pouco o processo :-p de
> alterar o conteúdo de um arquivo quando se deseja que o mesmo arquivo
> receba o conteudo alterado.
>
> Vira e meche temos um arquivo assim:
>
> $ echo -e "batata\nlaranja\nbanana" >| frutas
> $ cat frutas
> batata
> laranja
> banana
> $
>
> Querendo tirar laranjas do arquivo acima :-p e fazendo assim:
>
> $ echo -e "batata\nlaranja\nbanana" >| frutas
> $ cat frutas | grep -v laranja >| frutas
> $ cat frutas
> $
>
> acabamos com um arquivo vazio. Normalmente, entao, fazemos assim:
>
> $ echo -e "batata\nlaranja\nbanana" >| frutas
> $ cat frutas | grep -v laranja >| frutas-tmp
> $ mv frutas-tmp frutas
> $ cat frutas
> batata
> banana
> $
>
> Nao eh o fim do mundo ter que usar esse passo intermediario (mv), e
> sob varios aspectos talvez seja ate recomendavel, mas podemos pular o
> mv fazendo assim:
>
> $ echo -e "batata\nlaranja\nbanana" >| frutas
> $ cat <(cat frutas | grep -v laranja) >| frutas
> $ cat frutas
> batata
> banana
> $
>
> cat <[]'s :-p
>
> --
> (o_   ------------------     __o
> //\   arka...@lsd.org.br <arkanon%40lsd.org.br>   _`\<,
> V_/_  --- www.lsd.org.br  (_)/(_)
> ---------------------------------
>  
>



-- 
------------------------------------------
1. Notebook para você ficar livre e programar a vontade: R$ 2300
2. Curso de Programação/SysAdmin/DBA: R$ 5000
3. Pedir a solução pronta para um problema numa lista de discussão: Não tem
preço !

E para todas as outras existe RTFM, STFW e  LMGTFY


[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: shell-script-unsubscr...@yahoogrupos.com.br
---------------------------------------------------------------------
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

<*> Para visitar o site do seu grupo na web, acesse:
    http://br.groups.yahoo.com/group/shell-script/

<*> Para sair deste grupo, envie um e-mail para:
    shell-script-unsubscr...@yahoogrupos.com.br

<*> O uso que você faz do Yahoo! Grupos está sujeito aos:
    http://br.yahoo.com/info/utos.html


Responder a