Hola a todos,
        
        me di cuenta de que no quieres trabajar con la doble comilla
        sino con la
        comilla simple o apóstrofo. Es más o menos lo mismo, pero he
        repasado
        las órdenes y serían:
        
        tr -d \' <entrada.csv >salida.csv
        
        y en el caso de sed, ojo porque tienes dos posibilidades:
        
        a) Eliminar sólo los casos que a ti te interesarían (es decir,
        cuando
        aparece un nulo que serían dos comillas simples juntas (''): 
        
        sed s/\'\'//g entrada.csv >salida.csv
        
        b) o eliminar todas las comillas simples del texto (equivalente
        al tr):
        
        sed s/\'//g entrada.csv >salida.csv
        
        Un saludo
        
        
        El mar, 01-02-2011 a las 22:28 +0100, Jorge Tornero escribió:
        > Hola Rodrigo y resto del personal,
        > 
        > lo que tú quieres hacer, bajo mi punto de vista, está pidiendo
        a
        > gritos  sed y/o tr (doy por supuesto que trabajas en
        GNU/linux). Yo
        > tenía un problema similar con csv en los que el separador
        decimal era
        > la coma y lo tenía que cambiar a punto y con la orden sed o tr
        > apropiada  un fichero de 60MB con 350000 registros se lo
        merienda en
        > cosa de 0.7 segundos (de veras). Además, te da igual que en
        los campos
        > de texto no haya comillas, postgresql te los importa igual, de
        manera
        > que puedes seguir con el copy (más sencillo, simplemente \copy
        data
        > from 'mifichero.csv' with delimiter ';' csv header (o con el
        comando
        > COPY, lo que ocurre es que yo uso \copy en psql para evitar
        rollos de
        > permisos en directorios, etc...)
        > 
        > Con sed:
        > 
        > sed 's/\"//g' <ficheroentrada >ficherosalida
        > 
        > y con tr:
        > 
        > tr -d \" <ficheroentrada >ficherosalida
        > 
        > (revísalos porque son de medio memorieta)
        > 
        > El resultado es espectacular de veras. Adicionalmente, si
        trabajas en
        > KDE (no sé si Gnome lo permite), te puedes hacer un
        servicemenu de
        > manera que sólo tendrías que darle al botón derecho del ratón
        y
        > seleccionar del menú contextual tu acción (eliminar comillas o
        algo
        > así, a tu gusto) de manera que te sería todo mucho más
        sencillo. Es
        > más, en tu propio script para el servicemenu puedes incluir la
        llamada
        > a psql con el comando \copy y ya te haría la importación del
        tirón.
        > Pero eso es otra historia...
        > 
        > Un saludo, pruébalo y ya nos cuentas.
        > 
        > Jorge Tornero
        > Centro Oceanográfico de Cádiz
        > Instituto Español de Oceanografía
        > Muelle de Levante, s/n
        > Puerto Pesquero - Cadiz
        > 
        
        
-- 
-----------------------------------------
Jorge Tornero Núñez
Centro Oceanográfico de Cádiz
Instituto Español de Oceanografía
Puerto Pesquero - Muelle de Levante, s/n
11006 Cádiz - España
Tel. +34 956294189
Fax. +34 956294232
www.ieo.es
-
Enviado a la lista de correo pgsql-es-ayuda ([email protected])
Para cambiar tu suscripci�n:
http://www.postgresql.org/mailpref/pgsql-es-ayuda

Responder a