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