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

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

Re: [shell-script] Re: Remover caracter do texto


From: Tiago Barcellos Peczenyj
Subject: Re: [shell-script] Re: Remover caracter do texto
Date: Mon, 12 Dec 2005 20:52:10 -0200

Humm

grosso modo, eu resolveria trocando todos os caracteres nova linha pro
alguma coisa (tipo '+'), removeria todos os espaços extra, procuraria por
',+);' e trocaria por '+);', depois trocaria todos os '+' pro nova linha de
novo. é feio, rude, primitivo mas funciona.

ou usa uma expressão regular que tenha uma quebra de linha.

Em 12/12/05, weberlf <address@hidden> escreveu:
>
>  > vc pode usar o modo de procura e substituição global do sed
> >
> > sed 's/procura/substitui/g'
> >
> > $ sed 's/\)\;/\)/g' arquivo_original > arquivo modificado
> >
> > no caso, queremos trocar ');' por ')', entretantovc
> precisa "escapar" estes
> > caracteres pois eles tem significados diferentes para o SED.
> >
> > mas se vc tem apenas o ';' nesse caso pode usar o tr
> >
> > $ tr -d ';' arquivo_original > arquivo modificado
> >
>
> Tiago,
>
> Acho que não me expressei direito.
> Meu arquivo.txt original abaixo
>
> CREATE TABLE tmor_1212_cred_agreg (
>     seq_ctrc integer NOT NULL,
>     tp_credito character(1) NOT NULL,
>     placa_agreg character(7) NOT NULL,
>     data_baixa date NOT NULL,
>     vlr_credito numeric(9,2) NOT NULL,
>     seq_ficha_frete integer NOT NULL,
>     vlr_credito_orig numeric(9,2) NOT NULL,
>     data_inclusao date,
>     hora_inclusao time without time zone,
>     CONSTRAINT cst01_tmor_1212_cred_agreg CHECK (((tp_credito
> = 'C'::bpchar) OR
> (tp_credito = 'E'::bpchar)))
> );
>
> Utilizei o comando:
>
> sed '/CONSTRAINT/d;' arquivo.txt
>
> Este foi o resultado:
>
> CREATE TABLE tmor_1212_cred_agreg (
>     seq_ctrc integer NOT NULL,
>     tp_credito character(1) NOT NULL,
>     placa_agreg character(7) NOT NULL,
>     data_baixa date NOT NULL,
>     vlr_credito numeric(9,2) NOT NULL,
>     seq_ficha_frete integer NOT NULL,
>     vlr_credito_orig numeric(9,2) NOT NULL,
>     data_inclusao date,
>     hora_inclusao time without time zone,
> );
>
> O que desejo é time zone sem a virgula, ou seja o que antecede );
>     ...
>     ...
>     ...
>     seq_ficha_frete integer NOT NULL,
>     vlr_credito_orig numeric(9,2) NOT NULL,
>     data_inclusao date,
>     hora_inclusao time without time zone
> );
>
> Obrigado pela ajuda
>
> Weber
>
>
>
>
>
>  ---------------------------------------------------------------------
> 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:*  PUBLICIDADE
> <http://br.rd.yahoo.com/SIG=12f1t5s6j/M=386470.7632849.8508174.2369893/D=brclubs/S=2137111254:HM/Y=BR/EXP=1134434226/A=3135788/R=2/id=noscript/SIG=12c39trgo/*http://ad.br.doubleclick.net/clk;22846485;12120066;a?http://www.hoteis.com>
> ------------------------------
> *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<address@hidden?subject=Unsubscribe>
>
>    - O uso que você faz do Yahoo! Grupos está sujeito aos Termos do
>    Serviço do Yahoo! <http://br.yahoo.com/info/utos.html>.
>
>


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



reply via email to

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