1.7 KiB
1.7 KiB
status, type, tags, updated, title, created
| status | type | tags | updated | title | created | |
|---|---|---|---|---|---|---|
| stable | concept |
|
2026-02-27 | Redirects | 2025-12-17 |
Redirects
В системах на базе ядра Linux существуют 3 стандартных потока данных:
- stdin - стандартный поток ввода (с клавиатуры, например)
- stdout - стандартный поток вывода (вывод программы)
- stderr - стандартный поток ошибок
Можно с ними работать, управляя данными в этих потоках. Например, вывод одной команды перевести на вход другой команды.
>— вывод stdout в файл (создаёт новый файл или перезаписывает существующий):
ls > output.txt.>>— добавляет stdout к концу файла:
echo "new" >> output.txt.<— перенаправляет stdin из файла:
wc -l < file.txt.2>— вывод stderr в файл:
ls nonexist 2> errors.txt.2>&1— объединяет потоки ошибок и вывода, часто с последующим перенаправлением:
ls file1 file2 > result.txt 2>&1.&>— краткая запись для объединённого перенаправления stdout и stderr:
command &> alloutput.txt.
Pipeline
Существует понятие конвеера - перенаправление выхода предшевствующей команды на вход следующей: ls | grep user