SOFTWARE

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

A veces, solo necesita una forma rápida de convertir una hoja de cálculo en un archivo de valores separados por comas. Cuando no tiene una GUI para manejar tareas, Jack Wallen tiene el comando perfecto para el trabajo.

gettyimages edwin tan
Imagen: GettyImages/Edwin Tan

No puedo decirle cuántas veces tengo que trabajar para cargar datos en un nuevo sistema (ya sea un CMS, CRM, HRM… lo que sea), solo para descubrir que la plataforma no acepta el formato de archivo. Soy libre. Puede que tenga una hoja de cálculo o un archivo JSON con muchos datos, pero el sistema solo acepta archivos CSV.

CSV.

Ya sabes lo que es: valores separados por comas. Es un archivo de datos plano con cada entrada separada por comas. Algunas aplicaciones ahora pueden exportar archivos a formato CSV. Incluso Google Docs permite esto con tablas. Pero no todas las aplicaciones pueden manejar esa exportación. Es posible que tenga un archivo creado por otra aplicación, como una aplicación o servicio que genera archivos JSON, y necesita convertir el archivo al formato CSV.

VER: más de 40 términos de código abierto y Linux que necesita saber (Tecnopedia Premium)

A qué te dedicas

Como podemos usar Linux, puede usar una herramienta simple de código abierto llamada csvkit. Esta práctica aplicación me ha ahorrado horas de trabajo una y otra vez. Lo que csvkit puede hacer es convertir a CSV y usarlo. Si alguna vez realizó algún trabajo de desarrollo o implementó suficientes plataformas web (como herramientas CMS), es probable que se haya encontrado con una situación en la que necesite cargar datos en formato CSV.

LEER  Por qué la versión gratuita de Teams de Microsoft podría ayudarlo a competir mejor con Slack

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

Si está en el escritorio, siempre puede abrir el archivo en la suite ofimática de su elección y guardar como. Pero, ¿qué pasa si estás en un servidor sin cabeza y necesitas trabajar rápido? No desea tener que SCP el archivo en el escritorio, cargar el archivo, guardarlo en el formato necesario y luego SCP el archivo de vuelta al servidor.

Quieres ser eficiente. Por lo tanto, csvkit.

Vamos a instalarlo y ver cómo funciona.

que necesitas

Estaré demostrando csvkit en Ubuntu Server 21.10. Para hacer esto, necesita una distribución basada en Ubuntu y un usuario con privilegios de sudo. Finalmente, necesita 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 para la instalación.

Cómo convertir archivos XLS a CSV

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

Para tal conversión, puede usar el comando in2csv (incluido en 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 advirtiendo que se usan valores alfanuméricos en lugar de las entradas que faltan. La conversión toma solo unos segundos (dependiendo del tamaño del archivo). Una vez hecho esto, debe tener un archivo llamado clients.csv en la misma carpeta. Puede comprobar este archivo con:

less clients.csv

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

Figura A

csvkita
Nuestro archivo CSV, exportado desde xlsx usando in2csv.

Lo mismo ocurre con la conversión de archivos JSON, que se manejan de la siguiente manera:

in2csv clients.json > clients.csv

Si necesita convertir el archivo de CSV a JSON, puede hacerlo con el comando csvjson de la siguiente manera:

csvjson clients.csv > clients.json

Csvkit también tiene otros trucos útiles. Puede enumerar los nombres de las columnas en el archivo:

cvscut -n clients.csv

Ahora que conoce los nombres de las columnas en la fuente CSV recién convertida, puede convertir solo algunas de las columnas en el archivo clients.csv a otro archivo CSV. Suponga que tiene columnas Nombre y Apellido, y solo desea convertir esas columnas en un nuevo archivo. Esto se hará por:

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

Así es como podemos usar csvkit para manipular archivos XLS, JSON y CSV. Es posible que esta herramienta no se use con frecuencia, pero cuando la necesite, estará feliz de tenerla a su lado.

Suscríbete a Tecnopedia Cómo hacer que la tecnología funcione en YouTube Obtenga los últimos consejos técnicos para profesionales de negocios de Jack Wallen.

LEER  Domo vs Tableau | Comparación de herramientas de BI

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Botón volver arriba