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