354 читали · 5 лет назад
Потоки и конвейер в linux системах
Стандартные потоки ввода и вывода в linux являются одним из наиболее распространенных средств для обмена информацией процессов, а перенаправление >, >> и | является одной из самых популярных конструкций командного интерпретатора bash. Для справки: stdin - поток ввода (имеет индекс 0) stdout - поток вывода (индекс 1) stderr - поток вывода ошибок (индекс 2) Практическое использование: cat > file.txt Вводит выходные данные команды cat в файл file.txt. При этом если такого файла не существует, то он будет создан, если есть - перезаписан...
4 года назад
Конвейеры
Конвейер (Pipeline) - это последовательность одной или нескольких команд, разделенных одним из управляющих операторов '|' или '|&'. Формат конвейера следующий: [time [-p]] [!] command1 [ | or |& command2 ] … Выход каждой команды в конвейере подключается через пайп (pipe) к входу следующей команды. То есть, каждая команда читает вывод предыдущей команды. Это соединение выполняется до любых перенаправлений, указанных командой. Если используется '|&', стандартная ошибка command1, помимо стандартного вывода, подключается к стандартному вводу command2 через пайп, это сокращение для 2>&1 |. Это неявное...