Я разрабатываю файловую систему FUSE с помощью python. Проблема в том, что после монтирования файловой системы у меня нет доступа к stdin/stdout/stderr из моего скрипта fuse. Я ничего не вижу, даже трассировки. Я пытаюсь запустить pdb следующим образом:
import pdb
pdb.Pdb(None, open('pdb.in', 'r'), open('pdb.out', 'w')).set_trace()
Все работает, но очень неудобно. Я хочу сделать pdb.in и pdb.out как файлы fifo, но не знаю, как правильно их подключить. В идеале я хочу вводить команды и видеть вывод в одном терминале, но буду счастлив даже с двумя терминалами (в одном помещать команды и видеть вывод в другом). Вопросы:
1) Лучше/другой способ запустить pdb без stdin/stdout?
2) Как я могу перенаправить stdin на pdb.in fifo (все, что я набираю, должно идти на pdb.in)? Как я могу перенаправить pdb.out на стандартный вывод (у меня были странные ошибки с «cat pdb.out», но, возможно, я чего-то не понимаю)