12 команд Linux для фахівців з обробки даних
Linux давно став стандартом серед фахівців, які працюють із даними. Його командний рядок дозволяє швидко перевіряти структуру файлів, знаходити потрібні записи, сортувати, об’єднувати чи очищати дані ще до того, як вони потраплять у Python або SQL.
Для аналітика чи Data-інженера знання базових команд Linux — це спосіб працювати ефективніше. У терміналі можна виконати багато типових дій: від перегляду вмісту файлу до встановлення бібліотек і керування середовищем.
Ми зібрали 12 найкорисніших команд, які допоможуть впевнено користуватися у файловій системі, готувати дані до аналізу та автоматизувати рутинні операції.
1. head — швидко глянути початок даних
Коли потрібно зрозуміти структуру файлу, head допомагає миттєво подивитися, як виглядають перші рядки.
Переглянути перші п’ять рядків файлу
Так можна швидко оцінити, чи є заголовки, як називаються колонки та чи правильно зчиталися дані.
head -n 5 sales.csv
Подивитися лише заголовок таблиці
Зручно, коли потрібно перевірити назви колонок перед подальшою обробкою або об’єднанням кількох файлів.
head -1 sales.csv
2. tail — подивитися, що в кінці
Команда показує останні рядки файлу, тому її часто використовують для перевірки результатів обробки або логів системи.
Побачити останні п’ять рядків файлу
Це допомагає швидко перевірити, як завершився імпорт, чи немає помилок або некоректних записів у кінці.
tail -n 5 app.log
Стежити за оновленням файлу в реальному часі
Корисно, коли потрібно спостерігати, як скрипт обробляє дані або що відбувається на сервері під час виконання завдань.
tail -f app.log
3. wc — порахувати, скільки чого є
Команда підходить, коли потрібно швидко оцінити обсяг даних — рядки, слова або символи у файлі.
Порахувати кількість рядків у файлі
Зручно, щоб зрозуміти, скільки всього записів у датасеті або логах.
wc -l sales.csv
Порахувати записи без заголовка
Якщо потрібно дізнатися реальну кількість рядків із даними, а не включати шапку таблиці.
tail -n +2 sales.csv | wc -l
Швидко і зручно, особливо коли працюєш із великими CSV.
4. cut — витягнути потрібні колонки
Коли потрібно швидко подивитися лише частину даних, наприклад ідентифікатор замовлення, назву товару та ціну, зручно скористатися cut.
Витягнути кілька колонок із CSV
Команда дозволяє залишити лише потрібні поля, що допомагає сфокусуватися на ключових даних і прибрати зайве.
cut -d',' -f1,4,7 sales.csv
Отримати потрібні стовпці з TSV-файлу
Якщо працюєш із даними користувачів чи звітами, у файлах TSV можна швидко дістати лише релевантну інформацію, наприклад імена та контакти.
cut -f1,3 users.tsv
5. sort — упорядкувати дані
Коли потрібно впорядкувати записи за іменем, ціною чи регіоном, sort робить це швидко й без додаткових інструментів.
Відсортувати за іменем клієнта
Команда проходить увесь файл sales.csv і розміщує рядки у звичайному алфавітному порядку за даними у третій колонці.
sort -t',' -k3 sales.csv
Відфільтрувати за ціною від більшої до меншої
Дані впорядковуються за значенням у сьомій колонці у зворотному числовому порядку, щоб спочатку відобразити найдорожчі позиції.
sort -t',' -k7,7nr sales.csv
Команда обробляє навіть дуже великі файли, які не відкриє жоден Excel.
6. uniq — рахувати унікальні значення
Показує, скільки разів трапляється кожен елемент. Пам’ятай: працює коректно після sort.
Порахувати кількість записів для кожного регіону
Комбінація cut, sort і uniq спочатку виділяє колонку з регіонами, потім упорядковує значення, а далі підраховує, скільки разів кожен регіон трапляється у файлі. Це допомагає швидко оцінити розподіл даних за географією.
cut -d',' -f8 sales_data.csv | tail -n +2 | sort | uniq -c
Визначити частоту появи категорій товарів
Тут команда працює схоже, але з колонкою категорій. Результат сортується за кількістю — від найбільш поширених до найрідкісніших. Це зручно, якщо потрібно побачити, які групи даних домінують у наборі.
cut -d',' -f5 sales_data.csv | tail -n +2 | sort | uniq -c | sort -rn
7. awk — «швейцарський ніж» текстової обробки
awk уміє рахувати, фільтрувати, форматувати. Чудово підходить для швидких перевірок у терміналі.
Приклад 1
Витягнути лише назви товарів та їх ціну:
awk -F',' '{print $4, $7}' sales_data.csv | head -6
Приклад 2
Порахувати загальний дохід за всіма замовленнями:
awk -F',' 'NR>1 {sum+=$7} END {print "Total Revenue: $" sum}' sales_data.csv
Приклад 3
Показати замовлення, де ціна перевищує 100 доларів:
awk -F',' 'NR>1 && $7>100 {print $1, $4, $7}' sales_data.csv
Приклад 4
Обчислити середню ціну для кожної категорії товарів:
awk -F',' 'NR>1 {
category[$5]+=$7
count[$5]++
}
END {
for (cat in category)
printf "%s: $%.2f\n", cat, category[cat]/count[cat]
}' sales_data.csv
8. sed — знайти й замінити без відкриття файлу
Ця команда допомагає швидко виправити або очистити текстові дані прямо в терміналі. Вона зручна, коли потрібно зробити однакову заміну в багатьох рядках чи файлах — без відкриття редактора.
Замінити NULL на зрозуміле значення
Корисно, коли у файлі є відсутні дані, які краще позначити як Unknown, щоб не губити рядки під час подальшої обробки.
sed 's/NULL/Unknown/g' sales_data.csv
Видалити заголовок таблиці
Якщо потрібно прибрати перший рядок перед передачею файлу в іншу команду або скрипт.
sed '1d' sales_data.csv
Змінити статуси в даних
Наприклад, коли треба уніфікувати написання значень або зробити їх коротшими.
sed 's/completed/DONE/g' sales_data.csv
9. find — відшукати потрібні файли в проєкті
Коли проєкт росте, а дані розкладені по різних папках — знайти потрібний файл вручну стає складно. Команда find дозволяє швидко відшукати потрібні файли за назвою, типом або часом зміни.
Знайти всі CSV у каталозі
Команда переглядає вказану директорію та всі вкладені папки, показуючи всі файли з розширенням .csv. Це зручно, коли потрібно зібрати всі таблиці з даними в одному місці або перевірити, чи не загубився якийсь файл.
find data_project -name "*.csv"
Показати файли, змінені протягом останньої хвилини
Допомагає швидко відслідкувати, які файли оновилися після запуску скриптів чи імпорту нових даних.
find data_project -name "*.csv" -mmin -1
Порахувати кількість рядків у кожному CSV-файлі
Комбінація find і wc дозволяє виконати команду для кожного знайденого файлу. Так можна швидко перевірити, скільки записів містить кожен датасет, не відкриваючи їх окремо.
find data_project -name "*.csv" -exec wc -l {} \;
10. jq — робота з JSON
Багато API повертають дані у форматі JSON. Замість того щоб парсити це вручну, використовуй jq.
Показати красиво відформатований JSON
Якщо файл має вкладену структуру, jq ‘.’ робить його читабельним, додаючи відступи та структурування. Це допомагає побачити, як організовані дані, і знайти потрібні ключі.
jq '.' data.json
Витягнути конкретні значення
Такий спосіб зручний, коли потрібно швидко подивитися список клієнтів або будь-якого іншого атрибута.
jq '.orders[].customer' data.json
Відфільтрувати записи, де ціна більша за 100
Команда може виконувати фільтрацію без додаткових скриптів.
jq '.orders[] | select(.price > 100)' data.json
11. grep — знайти потрібні рядки у файлі
Якщо потрібно знайти певні записи в датасеті, логи або фрагменти тексту, grep допомагає зробити це миттєво.
Знайти всі записи з певним словом
Корисно, коли треба побачити всі рядки, де зустрічається певна категорія чи ім’я.
grep "Electronics" sales.csv
Показати лише рядки, які не містять заданого слова
Зручно, якщо хочеш відфільтрувати записи з іншим статусом або виключити непотрібні дані.
grep -v "completed" sales.csv
12. mv — перемістити або перейменувати файл
Команда допомагає підтримувати порядок у проєкті — переносити файли між папками або давати їм зрозумілі назви.
Перемістити файл у нову папку
Корисно, щоб розділити оброблені дані.
mv raw_data.csv processed/data_clean.csv
Перейменувати файл
Застосовується, коли потрібно створити копію або змінити назву для зрозумілішої структури.
mv data.csv data_backup.csv
Підсумок
Знати команди Linux — означає не просто орієнтуватися в терміналі, а розуміти, як працює сама інфраструктура даних. Коли володієш цими базовими інструментами, будь-яке завдання виконується швидше й точніше.
Linux дозволяє мислити як інженер: бачити процес цілісно, керувати даними без зайвих дій і автоматизувати рутину. І чим упевненіше почуваєшся у командному рядку, тим більше часу залишається на головне — аналітику, моделі та нові ідеї.Linux не кусається, якщо мати якісну підтримку та зрозумілий підхід.
Радимо переглянути курси від ITEDU та обрати програму, яка допоможе швидко прокачати навички.