por que o csv está consumindo mais tamanho de arquivo no meu script unix?

1

Estou usando o este script unix que está buscando registros na forma de csv. Eu tenho uma consulta SQL usada para essa finalidade. Ele contém informações abaixo

SET PAGESIZE 5000
SET COLSEP ","
SET LINESIZE 2000
SET FEEDBACK OFF
SET NEWPAGE NONE
SET UNDERLINE OFF

Será que PAGESIZE está consumindo mais espaço?

O script retorna 4MB de arquivo CSV ( OBTM.csv ), enquanto se eu estou convertendo o mesmo para ( OBTM.xlsx ) ele é 48KB.

Por favor, esclarecer minha consulta

    
por user3475 11.09.2013 / 14:29

1 resposta

1

Provavelmente, cada campo em cada registro é preenchido com espaço para a largura do campo. Precisamos ver a consulta, mas em vez de select * from table , você pode precisar

select rtrim(field1) || ',' || rtrim(field2) || ',' || rtrim(field3) -- ...

Como alternativa, execute o arquivo csv por meio de um script sed para aparar espaço em branco excessivo:

sed -i 's/[[:blank:]]\+,/,/g' OBTM.csv
    
por 11.09.2013 / 14:57