Bash:
Arbeide med CSV
Hvordan:
Lese en CSV-fil Linje for Linje
while IFS=, read -r kolonne1 kolonne2 kolonne3
do
echo "Kolonne 1: $kolonne1, Kolonne 2: $kolonne2, Kolonne 3: $kolonne3"
done < eksempel.csvEksempel på utskrift:
Kolonne 1: id, Kolonne 2: navn, Kolonne 3: epost
...Filtrere CSV-rader Basert på en Betingelse
Ved å bruke awk, kan du enkelt filtrere rader. For eksempel, for å finne rader hvor andre kolonne er lik “Alice”:
awk -F, '$2 == "Alice" { print $0 }' eksempel.csvEndre en Kolonneverdi
For å endre den andre kolonnen til store bokstaver:
awk -F, 'BEGIN {OFS=",";} { $2 = toupper($2); print $0; }' eksempel.csvSortere en CSV-fil Basert på en Kolonne
Du kan sortere en CSV-fil basert på, si, den tredje kolonnen (numerisk):
sort -t, -k3,3n eksempel.csvBruke csvkit til Mer Komplekse Oppgaver
csvkit er en samling av kommandolinjeverktøy for å konvertere til og arbeide med CSV. Det kan installeres via pip.
For å konvertere en JSON-fil til CSV:
in2csv data.json > data.csvFor å spørre en CSV-fil ved bruk av SQL:
csvsql --query "SELECT name FROM eksempel WHERE id = 10" eksempel.csvMerk: Installasjon av csvkit krever Python og kan gjøres ved å bruke pip install csvkit.