Fish Shell:
Робота з CSV

Як:

Fish Shell сам по собі не має вбудованих функцій, спеціально призначених для маніпуляції з CSV. Однак, ви можете використовувати утиліти Unix, такі як awk, sed, та cut для базових операцій або використовувати спеціалізовані інструменти, такі як csvkit, для більш складних завдань.

Читання файлу CSV та друк першої колонки:

Використання cut для витягування першої колонки:

cut -d ',' -f1 data.csv

Приклад виводу:

Ім'я
Аліса
Боб

Фільтрація рядків CSV на основі значення колонки:

Використання awk для знаходження рядків, де друга колонка відповідає “42”:

awk -F, '$2 == "42" { print $0 }' data.csv

Приклад виводу:

Боб,42,Лондон

Модифікація файлу CSV (наприклад, додавання колонки):

Використання awk для додавання колонки зі статичним значенням “НоваКолонка”:

awk -F, 'BEGIN {OFS=","} {print $0,"НоваКолонка"}' data.csv > modified.csv

Приклад виводу у modified.csv:

Ім'я,Вік,Місто,НоваКолонка
Аліса,30,Нью-Йорк,НоваКолонка
Боб,42,Лондон,НоваКолонка

Використання csvkit для складніших операцій:

Спочатку переконайтеся, що у вас встановлений csvkit. Якщо ні, встановіть його за допомогою pip: pip install csvkit.

Конвертація файлу CSV у JSON:

csvjson data.csv > data.json

Приклад виводу в data.json:

[{"Ім'я":"Аліса","Вік":"30","Місто":"Нью-Йорк"},{"Ім'я":"Боб","Вік":"42","Місто":"Лондон"}]

Фільтрація з використанням csvkit та csvgrep:

csvgrep -c 2 -m 42 data.csv

Ця команда повторює завдання фільтрації, але використовує csvkit, націлюючись на колонку 2 для значення “42”.

Підсумовуючи, хоча Fish Shell сам по собі може не пропонувати безпосередніх засобів для маніпуляції з файлами CSV, його безшовна інтеграція з утилітами Unix та наявність інструментів, таких як csvkit, забезпечують потужні можливості для роботи з файлами CSV.