Карточка Senior Потоки и пайпы обновлено

Подстановка процессов

Вопрос

Что такое <(cmd) и зачем она нужна?

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

Ответьте про себя или вслух, потом откройте ответ и сверьтесь.

Показать ответ и разбор

Коротко

Bash запускает cmd и подставляет путь вроде /dev/fd/63, из которого читается её вывод. Нужна, когда программа принимает имена файлов, а не stdin, или нужно несколько входов: diff <(sort a) <(sort b), comm -12 <(sort a) <(sort b).

Ответ

Bash запускает cmd и подставляет путь вроде /dev/fd/63, из которого читается её вывод. Нужна, когда программа принимает имена файлов, а не stdin, или нужно несколько входов: diff <(sort a) <(sort b), comm -12 <(sort a) <(sort b). Обратная форма >(cmd) даёт «файл» для записи.

Разбор

Bash запускает cmd и подставляет путь вроде /dev/fd/63, из которого читается её вывод. Нужна, когда программа принимает имена файлов, а не stdin, или нужно несколько входов: diff <(sort a) <(sort b), comm -12 <(sort a) <(sort b). Обратная форма >(cmd) даёт «файл» для записи.

Ответьте сами, а не прочитайте

В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.

Термины по теме