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: Fabricio Lopes de Souza
Subject: Re: [shell-script] Re: Remover caracter do texto
Date: Fri, 16 Dec 2005 10:20:28 -0200

Veja se assim te satisfaz

//-------------------------------------------------
[root@fabricio ~]# cat teste
EATE 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)))
);
[root@fabricio ~]# tac teste | sed '/)\;/{
:find
N
s/\,//g
t
b find
}
' | tac
EATE 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)))
);
[root@fabricio ~]#

//-------------------------------------------------

explicando :

tac teste | sed '/)\;/{
:find
N
s/\,//g
t
b find
}
' | tac

primeiro , como queremos o a primeira "," antes do "};" , invertemos o
arquivo [tac]
quando ele achar o "};" ['/)\;/] , primeiro ele cria uma label [:find]
, depois ele tenta fazer a troca de "," para "" [s/\,//g] , caso ele
consiga , o script termina [t] , caso ele nao faca nenhuma troca , ele
volta para onde definimos a label find e repete tudo outra vez ate
achar uma "," a ser trocada [b find] . Por ultimo , queremos nosso
arquivo de volta na ordem certa , entao invertemos denovo [tac]


qualquer coisa eh soh chamar :)


reply via email to

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