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

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

Re: [shell-script] preservando separador de campo


From: MrBiTs
Subject: Re: [shell-script] preservando separador de campo
Date: Sun, 30 Oct 2005 15:48:08 -0200
User-agent: Mozilla Thunderbird 1.0.7 (X11/20051013)

> o meu problema é que os campos são separados por virgula, as com aspas
> simples eu tenho que ignora-los. a sua sugestão funcionaria para as strings
> mas para os valores numericos ficariam todos "maçarocados" entre as strings.
> a query vc acertou, mas o motivo é uma viagem pessoal, nenhum banco de dados
> normal.
> 
> to estudando ainda, em algum lugar do mundo alguem ja deve ter feito isso...
> =)

Fugindo um pouco do shell-script e entrando no mundo SQL, que tal um
SELECT campo1,campo2,campo3 INTO OUTFILE '/tmp/saida.out' FIELDS
TERMINATED BY '^' LINES TERMINATED BY '\n' FROM tabela ?

Isso faria com que a sua vírgula fosse somente uma vírgula, já que o seu
separador de campos seria o ^. Há o problema do ^ ser um meta caracter
de regex, mas nada que uma "escapada" nele (\^)  não resolva.

Já a solução do Maurício funcionou assim, aqui:

root@pinguim:~# bash -x mau.sh
+ IFS='\'\'''
+ var=(`cat valores`)
++ cat valores
+ echo -n 'são, francisco'
são, francisco
+ IFS=,
+ for i in '${var[2]}'
+ echo 43
43
+ for i in '${var[2]}'
+ echo 57
57
+ for i in '${var[2]}'
+ echo 0.0
0.0
+ echo 1994-11-29
1994-11-29

Não entendi onde os números ficaram "maçarocados".

----
GPG Public Key: http://www.mrbits.com.br/gpg-public-key.asc

         \\|||//
         (.) (.)
----ooOO--( )--OOoo-----
      MrBiTs
http://www.mrbits.com.br
  address@hidden
------------------------


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



reply via email to

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