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

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

RES: RES: [shell-script] Alterar campo dentro do arquivo


From: Julio Cezar Neves - DATAPREVRJ
Subject: RES: RES: [shell-script] Alterar campo dentro do arquivo
Date: Thu, 1 Jul 2004 15:53:32 -0300

Aê Luiz,
trocando uma data na 10a. posição:

echo 1234567890xDATAx12345678901 | sed 's/\(.\{10\}\).\{6\}/\1300604/'

Explico:
s - trocar
(.{10}) - .->qq caractere, {10}->dez vezes e os parênteses servem para
formar um grupo., ou seja formei um grupo com os 10 primeiros caracteres;
.{6} - Saõ os próximos 6 caracteres (a data);
/\1300604/ - As barras servem para definir o escopo da troca. O \1 substitui
o agrupamento que feito (os 10 primeiros caracteres) e a nova data. 

As outras contrabarras são para proteger (,),{ e } da interpretação do
shell.

No seu caso, substitua o 10 por 54.

Sucesso,
Julio Cezar Neves
Tel:+55 21 2528-7070 / +55 21 8112-9988
Fax: +55 21 2528-7646
mailto:address@hidden


| -----Mensagem original-----
| De: lferreir1 [mailto:address@hidden]
| Enviada em: quinta-feira, 1 de julho de 2004 13:50
| Para: address@hidden
| Assunto: Re: RES: [shell-script] Alterar campo dentro do arquivo
| 
| 
| --- Em address@hidden, Julio Cezar Neves - 
| DATAPREVRJ <julio.neves@p...> escreveu
| 
| Caro Júlio, vc tem razão... Não me expressei direito.
| Como o registro é fixo, a posição ao qual quero alterar ( que é o 
| campo da data ) tb é fixo. Os demais campos deste registro são 
| variáveis.
| 
| Não posso alterar via editor, ou pelo sed, pois o meu receio é que 
| possa haver o mesmo numeral em outro campo.
| 
| Como eu sei que no campo 55 até 60 somente existe 010704, quero 
| alterar para 300604. Só agora eu lembrei que este arquivo contém 
| header e trailler.
| 
| Conseguí expricar ou compricar?
| 
| Luiz
| 
| 
| > Vc colocará todos os registros com a mesma data? Poderia ser mais 
| explícito?
| > 
| > [ ]s,
| > Julio Cezar Neves
| > - Gerente do Programa de Software Livre -
| > Tel:+55 21 2528-7070 / +55 21 8112-9988
| > Fax: +55 21 2528-7646
| > mailto:julio.neves@p...
| > 
| > 
| > | -----Mensagem original-----
| > | De: lferreir1 [mailto:lferreir@e...]
| > | Enviada em: quinta-feira, 1 de julho de 2004 12:24
| > | Para: address@hidden
| > | Assunto: [shell-script] Alterar campo dentro do arquivo
| > | 
| > | 
| > | Galera, boa tarde...
| > | Tenho um arquivo com 1.200 registros, registros fixos com 400bytes
| > | No campo 55-60 é a data no formato DDMMAA
| > | 
| > | Como faço para alterar somente estes campos?
| > | 
| > | Ex.: 
| > | ....010704....
| > | para
| > | ....300604....
| > | 
| > | valeu galera!
| > | Luiz
| > | 
| > | 
| > | 
| > | ------------------------------------------------------------------
| ---
| > | 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
| > --------------------------------------------------------------------
| -
| >  
| > Links do Yahoo! Grupos
| 
| 
| 
| ---------------------------------------------------------------------
| 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
---------------------------------------------------------------------
 
Links do Yahoo! Grupos




 
 


reply via email to

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