[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [shell-script] preservando separador de campo
From: |
Emerson Domingues Souto |
Subject: |
Re: [shell-script] preservando separador de campo |
Date: |
Mon, 31 Oct 2005 12:53:31 -0200 |
Tiago, eu montei uma lógica pra isso, ta um pouco feio, mas é a versão 1.0 e
funciona, vc pode deixar mais bonitinho e postar pra gente se quiser:
Prompt> cat aa.sh
v_ct=0
v_nome="'são, francisco', 43, 57, 0.0, '1994-11-29'"
v_tam=${#v_nome}
v_aspaligada=0
v_campo=""
while true ; do
v_letra=${v_nome:$v_ct:1}
# marca se conteudo entre aspas
if [ "X$v_letra" = "X'" ] ; then
if test $v_aspaligada -eq 0 ; then
v_aspaligada=1
else
v_aspaligada=0
fi
fi
# mostra cada campo na quebra por virgula
v_quebra=0
if [ "X$v_letra" = "X," ] ; then
# mas a virgula tem q estar fora das aspas
if test $v_aspaligada -eq 0 ; then
echo $v_campo
v_campo=""
v_quebra=1
fi
fi
# carrega cada letra na variavel CAMPO
if test $v_quebra -eq 0 ; then
v_campo="$v_campo$v_letra"
fi
# Sai do loop
if test $v_ct -ge $v_tam ; then
break
fi
v_ct=`expr $v_ct + 1`
done
# mostra ultimo campo considerando que nao terminou em virgula
echo $v_campo
Prompt> sh aa.sh
'são, francisco'
43
57
0.0
'1994-11-29'
Espero ter ajudado
Emerson
----- Original Message -----
From: Tiago Barcellos Peczenyj
To: address@hidden
Sent: Sunday, October 30, 2005 3:03 AM
Subject: [shell-script] preservando separador de campo
Pessoal,
Estou cá brincando com o bom e velho bash quando me deparo com o
seguinte problema
Tenho um arquivo assim
$ cat valores
'são, francisco', 43, 57, 0.0, '1994-11-29'
E desejo deixa-lo assim:
$ cat esperado
'são, francisco'
43
57
0.0
'1994-11-29'
A primeira vista parece "só" trocar o caracter ',' por '\n' com o tr
mas... eu tenho uma string, 'são, francisco' onde preciso preservar
este mesmo caracter.
Alguma sugestão ?
Att
Tiago
---------------------------------------------------------------------
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
[As partes desta mensagem que não continham texto foram removidas]
- Re: [shell-script] Várias coisas ao mesmo tempo, (continued)
Re: [shell-script] preservando separador de campo, Tiago Barcellos Peczenyj, 2005/10/30
- Re: [shell-script] preservando separador de campo, MrBiTs, 2005/10/30
- Re: [shell-script] preservando separador de campo, Mauricio, 2005/10/30
- Re: [shell-script] preservando separador de campo, MrBiTs, 2005/10/30
- Re: [shell-script] preservando separador de campo, Tiago Barcellos Peczenyj, 2005/10/30
- Re: [shell-script] preservando separador de campo, Mauricio, 2005/10/31
Re: [shell-script] preservando separador de campo,
Emerson Domingues Souto <=
Re: [shell-script] preservando separador de campo, Rodrigo Monteiro, 2005/10/31