Menu
Coddy logo textTech

Что такое канал

Часть раздела Основы путешествия по Terminal на Coddy — урок 43 из 82.

Перенаправление позволяет отправлять вывод в файлы, но что, если вы хотите отправить вывод одной команды непосредственно в другую команду? Вот здесь и приходятся на помощь конвейеры.

Конвейер соединяет стандартный вывод одной команды со стандартным вводом другой с помощью символа |. Вместо сохранения промежуточных результатов в файл данные передаются напрямую между командами.

cat names.txt | sort

Это берёт вывод команды cat names.txt и передаёт его напрямую в sort. Отсортированный результат отображается на вашем экране без создания каких-либо временных файлов.

Без конвейеров вам пришлось бы выполнять несколько шагов:

cat names.txt > temp.txt
sort < temp.txt
rm temp.txt

Труба выполняет то же самое в одной элегантной команде. Представьте её как соединение команд, словно секций трубопровода — данные поступают с одного конца и проходят через каждую команду последовательно, пока не достигнут конечного вывода.

challenge icon

Задание

Легко

Используйте конвейер для чтения содержимого fruits.txt и сортировки их в алфавитном порядке одной командой.

Выполните команду, которая:

  • Использует cat для чтения fruits.txt
  • Передает вывод в sort с помощью символа |

Подсказка: Формат: cat filename | sort. Вывод cat поступает напрямую в sort без необходимости в промежуточных файлах.

Шпаргалка

Конвейер конвейер соединяет стандартный вывод одной команды со стандартным вводом другой с помощью символа |:

cat names.txt | sort

Это берёт вывод команды cat names.txt и передаёт его напрямую в sort, избавляя от необходимости использовать временные файлы.

Без конвейеров потребовалось бы несколько шагов:

cat names.txt > temp.txt
sort < temp.txt
rm temp.txt

Данные проходят через каждую команду последовательно, как секции конвейера.

Попробуйте сами

Терминал
quiz iconПроверьте себя

В этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.

Все уроки раздела Основы