Статьи интересные, спасибо.Но все некоторые моменты не понятны.
Я все еще не уверен как работает система манипуляуции потоками изнутри.
Вот мое представление как оно работает.
Любой процесс запущенный в оболочке связан с 3 файлами(stdin,stdout,stderr)
Этот процесс читает с файла с дескриптором 0(stdin) входные данные, потом обрабатывает их и записывает их в файл с дескриптором 1 (stdout) в sdterr летят ошибки.Ну а дальше мы вправе перенаправлять ввод, вывод этих дескрипторов в другие файлы или другие дескрипторы.
То есть меня интересует правильно я понимаю принцип работы.
Просто если не понимать суть работы этих вещей трудно дальше разбираться.