#!/bin/sh # \ exec expect -- "$0" ${1+"$@"} # Description: unbuffer stdout of a program # Author: Don Libes, NIST if {[string compare [lindex $argv 0] "-p"] == 0} { # pipeline set stty_init "-echo" eval spawn -noecho [lrange $argv 1 end] close_on_eof -i $user_spawn_id 0 interact { eof { # flush remaining output from child expect -timeout 1 -re .+ return } } } else { set stty_init "-opost" set timeout -1 eval spawn -noecho $argv expect }