Piping data to Linux program qui attend un TTY (terminal)

J’ai un programme sous Linux qui refuse de fonctionner si son stdin / stdout n’est pas un TTY (terminal). Existe-t-il un outil facile à utiliser qui créera un PTY, démarrera le programme avec le TTY nouvellement créé et copiera toutes les données sur stdin / stdout?

Le cas d’utilisation n’est pas interactif, mais le script. Je suis à la recherche de la solution la plus légère, de préférence ne pas créer de connexions TCP, et ne nécessitant pas d’autres outils et bibliothèques à installer.

unbuffer , une partie de expect ( sudo apt-get install expect-dev sur Ubuntu Lucid), peut tromper un programme en lui faisant croire qu’il est connecté à un TTY.

 $ tty /dev/pts/3 $ echo | tty not a tty $ echo | unbuffer tty /dev/pts/11