mirror of
https://github.com/Yaslonane/lpic_1-101.git
synced 2026-05-19 17:48:32 +03:00
Created new structure
This commit is contained in:
+43
@@ -0,0 +1,43 @@
|
||||
**103.4** Потоки, конвейеры и перенаправления
|
||||
|
||||
Студент должен уметь управлять потоками для обработки текстовых данных
|
||||
|
||||
**Изучаем** :
|
||||
|
||||
- перенаправление стандартных ввода, вывода и ошибок;
|
||||
- передачу вывода одной команды на ввод другой;
|
||||
- использование вывода одной команды в качестве аргументов другой;
|
||||
- получение выходных данных в файл и на стандартный вывод.
|
||||
|
||||
**Термины и утилиты: **
|
||||
|
||||
- tee
|
||||
- xargs
|
||||
|
||||
- stdin
|
||||
- stout
|
||||
- stderr
|
||||
|
||||
Linux традиционно использует потоки для ввода, вывода и ошибок. Обычно ввод – это клавиатура или файлы, а вывод ошибок и результатов происходит в консоль. Но часто бывает нужно объединить последовательность команд в конвейер, или отправить результат в какой-нибудь файл.
|
||||
|
||||
Для того чтобы послать на ввод программы некоторые данные используется знак " **<**", например:
|
||||
|
||||
**wc** **<** **file**** 1. ****txt**** ** _(использовать в качестве ввода для программы_ _wc_ _файл_ _file __.__ txt__);_
|
||||
|
||||
Для того чтобы послать вывод программы куда-нибудь, кроме стандартного направления, используется знак " **>**", например:
|
||||
|
||||
**ls** **>** **list****. ****txt** _(перезаписать содержимое файла_ _list __.__ txt_ _результатом команды_ _ls__);_
|
||||
|
||||
**ls** **>>** **list****. ****txt** _(дописать в файл_ _list __.__ txt_ _результат команды_ _ls__);_
|
||||
|
||||
Для ввода, вывода и ошибок используются следующие обозначения:
|
||||
|
||||
- **Stdin** _– стандартный ввод программы (обозначение "0");_
|
||||
- **Stdout** – _стандартный вывод программы (обозначение "1");_
|
||||
- **Stderr** – _стандартные ошибки программы (обозначение "2");_
|
||||
|
||||
Например:
|
||||
|
||||
**l**** s bob 2> error.txt**
|
||||
|
||||
**ls**** bob **** > **** result ****.**** txt **** 2> **** error ****.**** txt**
|
||||
Reference in New Issue
Block a user