Fish Shell:
Arbeide med CSV
Hvordan:
Fish Shell, i seg selv, har ikke innebygde funksjoner spesifikt designet for manipulering av CSV. Imidlertid kan du utnytte Unix-verktøy som awk
, sed
, og cut
for grunnleggende operasjoner eller bruke spesialiserte verktøy som csvkit
for mer avanserte oppgaver.
Lese en CSV-fil og skrive ut den første kolonnen:
Bruker cut
for å trekke ut den første kolonnen:
cut -d ',' -f1 data.csv
Eksempel på utdata:
Navn
Alice
Bob
Filtrere CSV-rader basert på kolonneverdi:
Bruker awk
for å finne rader hvor den andre kolonnen matcher “42”:
awk -F, '$2 == "42" { print $0 }' data.csv
Eksempel på utdata:
Bob,42,London
Modifisere en CSV-fil (f.eks., legge til en kolonne):
Bruker awk
for å legge til en kolonne med en statisk verdi “NewColumn”:
awk -F, 'BEGIN {OFS=","} {print $0,"NewColumn"}' data.csv > modified.csv
Eksempel på utdata i modified.csv
:
Navn,Alder,By,NewColumn
Alice,30,New York,NewColumn
Bob,42,London,NewColumn
Bruk av csvkit
for mer avanserte operasjoner:
Først, sørg for at du har csvkit
installert. Hvis ikke, installer det ved hjelp av pip: pip install csvkit
.
Konvertere en CSV-fil til JSON:
csvjson data.csv > data.json
Eksempel på data.json
utdata:
[{"Navn":"Alice","Alder":"30","By":"New York"},{"Navn":"Bob","Alder":"42","By":"London"}]
Filtrering med csvkit
sitt csvgrep
:
csvgrep -c 2 -m 42 data.csv
Denne kommandoen replikerer filtreringsoppgaven, men ved å bruke csvkit
, rettet mot kolonne 2 for verdien “42”.
Konklusjonen er at selv om Fish Shell i seg selv kanskje ikke tilbyr direkte CSV-manipuleringsmuligheter, gir dens sømløse integrasjon med Unix-verktøy og tilgjengeligheten av verktøy som csvkit
kraftige alternativer for arbeid med CSV-filer.