Bash:
Робота з CSV
Як:
Читання файлу CSV рядок за рядком
while IFS=, read -r column1 column2 column3
do
echo "Стовпчик 1: $column1, Стовпчик 2: $column2, Стовпчик 3: $column3"
done < sample.csv
Приклад виводу:
Стовпчик 1: id, Стовпчик 2: name, Стовпчик 3: email
...
Фільтрація рядків CSV за умовою
Використовуючи awk
, ви можете легко фільтрувати рядки. Наприклад, щоб знайти рядки, де другий стовпчик дорівнює “Alice”:
awk -F, '$2 == "Alice" { print $0 }' sample.csv
Зміна значення стовпчика
Щоб змінити другий стовпчик на великі літери:
awk -F, 'BEGIN {OFS=",";} { $2 = toupper($2); print $0; }' sample.csv
Сортування файлу CSV за стовпчиком
Ви можете сортувати файл CSV, наприклад, за третім стовпчиком (числово):
sort -t, -k3,3n sample.csv
Використання csvkit
для складніших завдань
csvkit
- це набір інструментів командного рядка для конвертації в CSV та роботи з ним. Його можна встановити через pip.
Для конвертування файлу JSON в CSV:
in2csv data.json > data.csv
Для запиту до файлу CSV за допомогою SQL:
csvsql --query "SELECT name FROM sample WHERE id = 10" sample.csv
Примітка: Встановлення csvkit
вимагає Python і може бути виконане за допомогою pip install csvkit
.