•Оновлено•Arnošt Havelka
Ефект хвилі Bash: Стек конвеєра
Об'єднайте cat, grep та wc у багатоступеневий стек обробки тексту, який можна повторювати.
Почати інтерактивний урокЦей урок перетворює окремі команди на стек. Спочатку ви фільтруєте потік, а потім підраховуєте відфільтрований результат у тому самому ланцюжку команд.
Команди для практики
cat events.log | grep warn
cat events.log | grep warn | wc -l
Очікуваний сигнал терміналу
Перша команда повертає відповідні рядки. Друга повертає лише числовий підрахунок:
warn: queue
warn: retry
2
Чому це важливо
Конвеєри дозволяють кожній команді виконувати одну роботу добре. Така композиційність є основою продуктивності Bash і зберігає зрозумілість складних робочих процесів.
Поширені помилки
- Виконання
wc -lна повному введенні замість відфільтрованого. - Забування пробілів навколо
|, що спричиняє помилки синтаксичного аналізу. - Пропуск перевірки проміжного виводу.
Розширення практики
Збережіть підрахунок для звітування:
cat events.log | grep warn | wc -l > warn-count.txt
cat warn-count.txt
Це поєднує аналіз і документацію в одному легкому потоці.
Посилання
Ці посилання на документацію надають авторитетну інформацію про команди, використані в цій статті.