Jannah Theme License is not validated, Go to the theme options page to validate the license, You need a single license for each domain name.
Linux Cómo

Cómo convertir archivos XLS y JSON a CSV en Linux con csvkit

A veces, solo necesita un medio rápido para convertir una hoja de cálculo en un archivo de valores separados por comas. Cuando no tiene una GUI para encargarse de la tarea, Jack Wallen tiene el comando perfecto para el trabajo.

No puedo decirte cuántas veces he tenido que trabajar para subir datos a un nuevo sistema (ya sea un CMS, CRM, HRM … lo que sea), solo para descubrir que la plataforma no acepta formato de archivo que tenía disponible. Puede que tenga una hoja de cálculo o un archivo JSON con toneladas de datos, pero el sistema solo acepta un archivo CSV.CSV.

Ya sabes lo que es: valores separados por comas. Es un archivo plano de datos, cada entrada separada por una coma. Ahora, algunas aplicaciones permiten exportar un archivo a formato CSV. Incluso Google Docs permite tal acción con Hojas de cálculo. Pero no todas las aplicaciones pueden encargarse de esa exportación. Y es posible que tenga un archivo que fue creado por otra aplicación (como una aplicación o servicio que genera archivos JSON) y necesita ese archivo convertido a formato CSV.

¿A qué te dedicas?

Dado que tenemos Linux disponible para nosotros, recurre a una herramienta simple de código abierto llamada csvkit. Esta práctica aplicación me ha ahorrado algunas horas de trabajo en varias ocasiones. Lo que puede hacer csvkit es convertir y trabajar con CSV. Si alguna vez realizó algún trabajo de desarrollo o implementó suficientes plataformas en red (como herramientas CMS), lo más probable es que se haya encontrado con una situación en la que necesitaba cargar datos en formato CSV.

Y todo lo que tienes es un archivo de hoja de cálculo.

Si está en un escritorio, siempre puede abrir el archivo en la suite ofimática que elija y guardar como. Pero, ¿qué pasa si está en un servidor sin cabeza y necesita trabajar rápidamente? No desea tener que SCP del archivo en su escritorio, cargar el archivo, guardarlo en el formato requerido y luego SCP del archivo de regreso al servidor.

Quieres ser eficiente. Por lo tanto, csvkit.

Vamos a instalarlo y ver cómo funciona.

Lo que necesitarás

Estaré demostrando csvkit en Ubuntu Server 21.10. Para que esto funcione, necesitará una distribución basada en Ubuntu y un usuario con privilegios de sudo. Finalmente, necesitará un archivo de hoja de cálculo para convertir.

Cómo instalar csvkit

Csvkit está disponible en los repositorios estándar, por lo que la instalación es muy sencilla. Inicie sesión en su servidor Ubuntu (o escritorio), abra una ventana de terminal y emita el comando:

sudo apt-get install csvkit -y

Eso es todo por la instalación.

Cómo convertir un archivo XLS a CSV

Supongamos que tiene el archivo clients.xlsx y necesita convertirlo a clients.csv para luego cargarlo como una lista de clientes en su nueva herramienta CRM. La hoja de cálculo ya está diseñada en el formato exacto necesario para su CMS, por lo que todo lo que tiene que hacer es convertirla.

Para tal conversión, usaría el comando in2csv (incluido con csvkit) así:

in2csv clients.xlsx > clients.csv

Si tiene columnas o filas sin nombre en su archivo de origen, es posible que vea algún resultado del comando que advierte que se usaron valores alfanuméricos en lugar de las entradas faltantes. La conversión debería tomar solo unos segundos (dependiendo del tamaño del archivo). Una vez que esté completo, debe tener un archivo llamado clients.csv en la misma carpeta. Puede verificar ese archivo con:

less clients.csv

Debería ver un archivo CSV perfectamente formateado, listo para cargarse (Figura A).

Figura A

csvkita.jpg

Nuestro archivo CSV, exportado desde xlsx, usando in2csv.

Lo mismo ocurre con la conversión de un archivo JSON, que se maneja así:

in2csv clients.json > clients.csv

Si necesita convertir ese archivo de CSV a JSON, puede hacerlo con el comando csvjson así:

csvjson clients.csv > clients.json

Csvkit tiene un par de otros trucos útiles bajo la manga. Puede enumerar los nombres de las columnas en un archivo con:

cvscut -n clients.csv

Ahora que conoce los nombres de las columnas de su fuente CSV recién convertida, puede convertir solo ciertas columnas del archivo clients.csv a otro archivo CSV. Supongamos que tiene columnas Nombre y Apellido y solo desea que esas columnas se conviertan al nuevo archivo. Eso se haría con:

csvcut -c 'First Name','Last Name' clients.csv > names.csv

Y así es como podemos manipular archivos XLS, JSON y CSV con csvkit. Es posible que esta herramienta no se utilice con mucha frecuencia, pero cuando la necesite, estará feliz de tenerla disponible.

Psssst:  El kernel de Linux 5.15 está disponible y tiene algo especial para los usuarios de NTFS
Back to top button

Adblock detectado

Deshabilite su bloqueador de anuncios para poder ver el contenido de la página. Para un sitio independiente con contenido gratuito, es, literalmente, una cuestión de vida y muerte para tener anuncios. ¡Gracias por su comprensión!