Инструменты пользователя

Инструменты сайта


komandnaja_stroka._potoki_programmnye_kanaly_i_perenapravlenija

Различия

Показаны различия между двумя версиями страницы.

Ссылка на это сравнение

Предыдущая версия справа и слеваПредыдущая версия
Следующая версия
Предыдущая версия
komandnaja_stroka._potoki_programmnye_kanaly_i_perenapravlenija [2016/07/11 18:47] – [Паренаправление в / из стандартных потоков] daniilkomandnaja_stroka._potoki_programmnye_kanaly_i_perenapravlenija [Дата неизвестна] (текущий) – внешнее изменение (Дата неизвестна) 127.0.0.1
Строка 4: Строка 4:
  
 ===== Стандартные потоки ввода / вывода ===== ===== Стандартные потоки ввода / вывода =====
 +
 +**Стандартные потоки** — воображаемые файлы, позволяющие осуществлять взаимодействие с пользователем как чтение и запись в файл. Кроме потоков ввода и вывода, существует еще и стандартный поток ошибок, на который выводятся все сообщения об ошибках и те информативные сообщения о ходе работы программы, которые не могут быть выведены в стандартный поток вывода.
  
 ^ Дескриптор ^ Название ^ Описание ^  ^ Дескриптор ^ Название ^ Описание ^ 
Строка 25: Строка 27:
 |  <wrap em>%%2>&-%%</wrap>  | Закрыть поток ошибок перед вызовом команды; | |  <wrap em>%%2>&-%%</wrap>  | Закрыть поток ошибок перед вызовом команды; |
 |  cat <wrap em>%%<<EOF%%</wrap>  | Весь текст между блоками EOF (в общем случае вместо EOF можно использовать любое слово) будет выведен на экран. Важно: перед последним EOF не должно быть пробелов! (heredoc синтаксис). | |  cat <wrap em>%%<<EOF%%</wrap>  | Весь текст между блоками EOF (в общем случае вместо EOF можно использовать любое слово) будет выведен на экран. Важно: перед последним EOF не должно быть пробелов! (heredoc синтаксис). |
 +
 +----
 +
 +===== Каналы =====
 +
 +Стандартные потоки можно перенаправлять не только в файлы, но и на вход других программ. Если поток вывода одной программы соединить с потоком ввода другой программы, получится конструкция, называемая **каналом**, **конвейером** или **пайпом** (от англ. pipe, труба). \\
 +В bash канал выглядит как последовательность команд, отделенных друг от друга символом <wrap em>|</wrap>:
 +<code bash>
 +команда1 | команда2 | команда3 ...
 +</code>
komandnaja_stroka._potoki_programmnye_kanaly_i_perenapravlenija.1468252033.txt.gz · Последнее изменение: 2016/07/11 00:00 (внешнее изменение)

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki