Использование pty - это не то же самое, что труба.Если вы не включите режим raw, драйвер tty отобразит символы и выполнит редактирование других строк.Таким образом, чтобы получить чистый путь к данным, вам также нужно перевести pty / tty в сырой режим.
Поскольку вы сейчас работаете с псевдоустройством, у вас есть только один поток ввода-вывода.Там нет никакого различия между stdout и stderr (это соглашение о пространстве пользователя).Таким образом, вы всегда будете видеть смешанные stdout и stderr при использовании pty / tty.