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

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

RES: [shell-script] selecionar texto por posicoes dentro de um txt


From: Rodolfo Villanova - TmS Brasil
Subject: RES: [shell-script] selecionar texto por posicoes dentro de um txt
Date: Thu, 11 Mar 2004 15:06:26 -0300

Fala, Bro!

Se o <espaço> que está contido na linha abaixo possuir tamanho fixo, é
possível fazer assim:

VAR="ericandersonmartinsmiranda 31071972 ruaantoniomariab"
PRI=`echo $VAR | cut -c10-20`
SEG=`echo $VAR | cut -c45-47`

Como provavelmente essa linha deve fazer parte de um lote desse tipo de
linha, então basta colocar essas linha dentro de um loop:

while read -r VAR resto
do
  VAR="ericandersonmartinsmiranda 31071972 ruaantoniomariab"
  PRI=`echo $VAR | cut -c10-20`
  SEG=`echo $VAR | cut -c45-47`
done < /diretorio/arquivo_dados.txt

ou ainda, usando awk:

awk '{ print(substr($0,10,10), substr($0,45,3))}'
/diretorio/arquivo_dados.txt


Já se os espaços forem de tamanho variável, é melhor tratar os dados como
campos:

while read -r VAR resto
do
  VAR="ericandersonmartinsmiranda 31071972 ruaantoniomariab"
  PRI=`echo $VAR | tr -s " " " " | cut -d" " -f1 | cut -c10-20`
  SEG=`echo $VAR | tr -s " " " " | cut -d" " -f3 | cut -c9-11
done < /diretorio/arquivo_dados.txt

ou com awk:

awk '{ print(substr($1,10,10), substr($3,9,3))}'
/diretorio/arquivo_dados.txt

Beleza?

Boa sorte!
-----------------
Rodolfo Villanova


> -----Mensagem original-----
> De: groo [mailto:address@hidden]
> Enviada em: quinta-feira, 11 de março de 2004 14:23
> Para: address@hidden
> Assunto: [shell-script] selecionar texto por posicoes dentro de um txt
>
>
>     se eu tenho um arkivo com linhas assim:
>
>
> ericandersonmartinsmiranda<espaço>31071972<espaco>ruaantoniomariab
> essa<espaco>466
>
>     gostaria de saber como eu posso pegar apenas o texto do
> caracter 10 ao 20 e do 45 ao 47.
>
>     sds
>
>     Eric Anderson
>     CPD Via Net SAO
>     11-66432800
>     11-96427554
>
>
> [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: address@hidden
> ---------------------------------------------------------------------
> Esta lista é moderada de acordo com o previsto em
http://www.listasdiscussao.cjb.net
---------------------------------------------------------------------

Links do Yahoo! Grupos
Para visitar o site do seu grupo, 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:
 http://br.yahoo.com/info/utos.html




reply via email to

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