Fish Shell:
Lavorare con i CSV
Come fare:
Fish Shell, di per sé, non dispone di funzioni integrate specificamente progettate per la manipolazione di CSV. Tuttavia, è possibile sfruttare utility Unix come awk
, sed
e cut
per operazioni di base o utilizzare strumenti specializzati come csvkit
per compiti più avanzati.
Leggere un file CSV e stampare la prima colonna:
Usando cut
per estrarre la prima colonna:
cut -d ',' -f1 data.csv
Output di esempio:
Nome
Alice
Bob
Filtrare le righe CSV in base al valore di una colonna:
Usando awk
per trovare le righe dove la seconda colonna corrisponde a “42”:
awk -F, '$2 == "42" { print $0 }' data.csv
Output di esempio:
Bob,42,Londra
Modificare un file CSV (es., aggiungere una colonna):
Usando awk
per aggiungere una colonna con un valore statico “NuovaColonna”:
awk -F, 'BEGIN {OFS=","} {print $0,"NuovaColonna"}' data.csv > modificato.csv
Output di esempio in modificato.csv
:
Nome,Età,Città,NuovaColonna
Alice,30,New York,NuovaColonna
Bob,42,Londra,NuovaColonna
Utilizzare csvkit
per operazioni più avanzate:
Prima, assicurati di avere csvkit
installato. Se non lo è, installalo usando pip: pip install csvkit
.
Convertire un file CSV in JSON:
csvjson data.csv > data.json
Output di esempio data.json
:
[{"Nome":"Alice","Età":"30","Città":"New York"},{"Nome":"Bob","Età":"42","Città":"Londra"}]
Filtrare con csvgrep
di csvkit
:
csvgrep -c 2 -m 42 data.csv
Questo comando replica il compito di filtraggio ma usando csvkit
, prendendo di mira la colonna 2 per il valore “42”.
In conclusione, sebbene Fish Shell in sé non offra capacità dirette di manipolazione dei CSV, la sua integrazione senza problemi con utility Unix e la disponibilità di strumenti come csvkit
forniscono potenti opzioni per lavorare con i file CSV.