Extraer datos de tabla a un CSV


Queremos extraer todos los email de una cierta tabla, para conocer el nombre del campo debemos ejecutar:

consultar-campos-de-la-tabla

Contar los registros totales de la tabla a extraer:

contar-campos-de-la-tabla

Extraemos la consulta sql a un archivo csv con delimitador coma en cierta ubicación:

copy (select email___con from contactos_900) to '/tmp/contactos-900.csv' with CSV DELIMITER ',';

Resultado
COPY 56388

Finalmente tenemos el archivo csv en cd /tmp/ listo para ser manipulado en VIM o visualizado con less el cual o también puede ser extraído a escritorio de Windows con WinSCP. [x]

Anuncios

Linux: Dividir y unir un archivo


Dividir archivo por mb
split -b 500M -d texto.txt texto.txt.cacho

-b → indica el tamaño de archivos a obtener
M → megas
-d → indica que los sufijos sean numéricos en lugar de alfabéticos
texto.txt → archivo que queremos dividir pesa 500 MB

Por lo tanto se generan:
texto.txt.cacho00 → archivo de 200mb
texto.txt.cacho01 → archivo de 200mb
texto.txt.cacho02 → archivo de 100mb

Dividir archivo en la linea indicada
split -l 20 fichero.txt

Dividir fichero en lineas de 20, total tiene 40, entonces divide en 2 partes.

fichero.txtaa
fichero.txtab

Unirlos nuevamente
cat texto.txt.cacho* > fichero.csv
cat texto.txt* > fichero.csv

Más opciones y ayuda en split – – help