Wednesday, November 14, 2012

Formatos y el comando tr



Recientemente me han asignado un proyecto, me dieron un archivo con N GB de tamaño, no era mucho, pero estaba mal formateado, era un tsv, pero mezclaba espacios con tab, ¡la locura! editarlo imposible con 2Gb de RAM, y mi maquinita viejita, lo ideal era subirlo a alguna Base de Datos, y poder tratar con el desde ahí. 

Entonces conocí tr, un comando de unix, que permite sustituir los separadores por otros, en este caso primero sustituí los espacios por otro caracter, y luego sustituí los tabs por este caracter y listo el archivo luego quedó bien formateado, y listo para subir.

sería algo así:

tr ' ' ',' < archivoAFormatear.tsv  > archivoSalidaFormateado.csv

otra cosa importante a comentar, ejecutar un shell script de mongodb es fácil, una maravilla, al menos en linux :) lo anoto acá para recordarlo. xD

mongo < scriptshell.js

El dibujo fue hecho entre un momento de ociosidad y de infancia, conozcan al  sr Brown. xD

otra comando útil entre los formatos entre windows y linux es la herramienta, ayuda a formatear ese molesto \r\n en un \n:

dos2unix -n fileoriginal.tsv  fileunix.tsv

de esta forma no elimina el original. y lo almacena en fileunix.tsv