Bash:
Praca z plikami CSV
Jak to zrobić:
Czytanie pliku CSV linia po linii
while IFS=, read -r kolumna1 kolumna2 kolumna3
do
echo "Kolumna 1: $kolumna1, Kolumna 2: $kolumna2, Kolumna 3: $kolumna3"
done < przykładowy.csvPrzykładowe wyjście:
Kolumna 1: id, Kolumna 2: nazwa, Kolumna 3: email
...Filtrowanie wierszy CSV na podstawie warunku
Używając awk, możesz łatwo filtrować wiersze. Na przykład, aby znaleźć wiersze, gdzie druga kolumna równa się “Alice”:
awk -F, '$2 == "Alice" { print $0 }' przykładowy.csvModyfikacja wartości kolumny
Aby zmienić wartość drugiej kolumny na wielkie litery:
awk -F, 'BEGIN {OFS=",";} { $2 = toupper($2); print $0; }' przykładowy.csvSortowanie pliku CSV na podstawie kolumny
Możesz sortować plik CSV na podstawie na przykład trzeciej kolumny (numerycznie):
sort -t, -k3,3n przykładowy.csvUżycie csvkit do bardziej złożonych zadań
csvkit to zbiór narzędzi wiersza poleceń do konwersji i pracy z plikami CSV. Może być zainstalowany za pomocą pip.
Aby przekonwertować plik JSON na CSV:
in2csv dane.json > dane.csvAby zapytać plik CSV przy użyciu SQL:
csvsql --query "SELECT nazwa FROM przykładowy WHERE id = 10" przykładowy.csvUwaga: Instalowanie csvkit wymaga Pythona i może być wykonane za pomocą pip install csvkit.