From 7f21fbbeac48055721e679c0fcde57ee3579cfb2 Mon Sep 17 00:00:00 2001 From: PsykeDady Date: Sun, 10 Nov 2024 14:46:39 +0100 Subject: [PATCH] correzioni + coauthor --- _posts/2024-11-09-howto-csv-terminale.md | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/_posts/2024-11-09-howto-csv-terminale.md b/_posts/2024-11-09-howto-csv-terminale.md index a39bfb2..a005b65 100644 --- a/_posts/2024-11-09-howto-csv-terminale.md +++ b/_posts/2024-11-09-howto-csv-terminale.md @@ -5,8 +5,8 @@ date: 2024-11-09 07:00 layout: post author: Davide Galati (in arte PsykeDady) author_github: PsykeDady -coauthor: linuxhubit -coauthor_github: linuxhubit +coauthor: toolleeo +coauthor_github: toolleeo published: true tags: - CSV @@ -299,7 +299,7 @@ xlsx2csv file_excel.xlsx > file_excel_convertito.csv ## Considerazioni finali -I file CSV sono talvolta piuttosto ostici da utilizzare, principalmente perché il formato presenta molte varianti. +I file CSV sono talvolta piuttosto ostici da utilizzare, principalmente perché il formato presenta molte varianti. Per esempio, normalmente contengono un _header_ con i nomi delle colonne nella prima riga del file, oppure utilizzano i doppi apici - spesso opzionali - per raggruppare i caratteri di stringhe che contengono i delimitatori. Per esempio: @@ -309,19 +309,19 @@ ID,Nome,Cognome,Indirizzo 2,Marco,Bianchi,via Marco Polo ``` -Queste casistiche si possono pensare di trattare con non banali combinazioni di comandi come `sort`, `head`, `tail` e `awk`, oltre a gestire il tutto con `python`. +Queste casistiche si possono pensare di trattare con non banali combinazioni di comandi come `sort`, `head`, `tail` e `awk`, oltre a gestire il tutto con `python`. Per esempio, in casi semplici, il comando ```bash head -n 1 file.csv ``` -estrae la prima riga dal file `file.csv`, che potrebbe corrispondere all'header. +estrae la prima riga dal file `file.csv`, che potrebbe corrispondere all'header. Il condizionale è dovuto al fatto che l'header non è obbligatorio nei file CSV, e potrebbe non essere presente, come nei molti esempi presentati in questo articolo. -Quando il formato di un file CSV si fa complicato, oppure le operazioni da svolgere sono non banali, come ad esempio l'unione di due file diversi utilizzando criteri opportuni, ci si può affidare - sempre dalla linea di comando - a strumenti specifici per i file CSV. -Alduni esempi sono i seguenti: +Quando il formato di un file CSV si fa complicato, oppure le operazioni da svolgere sono non banali, come ad esempio l'unione di due file diversi utilizzando criteri opportuni, ci si può affidare - sempre dalla linea di comando - a strumenti specifici per i file CSV. +Alcuni esempi sono i seguenti: -* [csvkit](https://github.com/wireservice/csvkit), una suite di comandi per convertire e manipolare i file CSV; -* [csvtk](https://bioinf.shenwei.me/csvtk/), un singolo programma scritto in linguaggio Go, che mette a disposizione parecchi sotto-comandi per manipolare i file CSV; -* [tabview](https://github.com/TabViewer/tabview), un programma in Python che usa la libreria `ncurses` per la visualizzazione di file CSV da terminale. +- [csvkit](https://github.com/wireservice/csvkit), una suite di comandi per convertire e manipolare i file CSV. +- [csvtk](https://bioinf.shenwei.me/csvtk/), un singolo programma scritto in linguaggio Go, che mette a disposizione parecchi sotto-comandi per manipolare i file CSV. +- [tabview](https://github.com/TabViewer/tabview), un programma in Python che usa la libreria `ncurses` per la visualizzazione di file CSV da terminale.