[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [shell-script] Adicionando ao final da linha
From: |
Fábio Batista |
Subject: |
Re: [shell-script] Adicionando ao final da linha |
Date: |
Mon, 6 Dec 2004 13:31:33 -0300 |
Não estamos pedindo ao SED para substituir o sinal de final de linha
por outra coisa.
Estamos pedindo ao SED para substituir a string que fez match com a
expressão "$" por outra coisa.
E esta string-que-fez-match-com-a-expressão-"$" é uma string vazia,
localizada logo antes do símbolo de quebra-de-linha (ou de
fim-de-arquivo)... Que será substituida pela nova string.
Fábio David Batista
address@hidden
http://nerd-o-matic.blogspot.com
On Mon, 6 Dec 2004 14:20:59 -0200, MrBiTs <address@hidden> wrote:
> <QUOTE>
> como já disse o julio aqui na lista, a pergunta não é se *há* uma maneira
> de
> fazer com o sed, mas *qual* delas você vai querer :)
> a mais curta:
>
> sed '1s/$/^campo6/ ; 1!s/$/^2004-11-02/' arquivo
>
> o cifrão representa o fim da linha, e o 1! é um endereço negado, ou seja,
> qualquer linha com exceção da primeira.
> </QUOTE>
>
> Verdade... Grande verdade...
>
> Gostei DEMAIS disso...
>
> Resultado Final:
>
> #!/bin/bash
>
> for file in *.db ; do
> tblname=`echo $file | cut -d "." -f 1`
> sed '1s/$/^$tblname\.campo6/ ; 1!s/$/^2004-11-02/' $file >
> new_$file
> done
>
> Interesante notar uma coisa: estamos pedindo ao sed para SUBSTITUIR o sinal
> de final de linha por uma string qqr. Mesmo assim, ele ACRESCENTA um sinal
> de final de linha apos a string.
>
>
> Valeus
>
>
>
> ---------------------------------------------------------------------
> 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
> ---------------------------------------------------------------------
>
>
>
>
> Yahoo! Grupos, um serviço oferecido por:
>
>
>
>
>
>
> ________________________________
> 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:
> address@hidden
>
> O uso que você faz do Yahoo! Grupos está sujeito aos Termos do Serviço do
> Yahoo!.