Artifact 7ec95644f0b6aace635558c5928914f84abe4867:
- Executable file example/unbuffer — part of check-in [5bb53d19d6] at 2010-09-30 22:05:34 on branch trunk — * example/autopasswd: Updated to use tclsh in PATH, and 'package * example/chess.exp: require Expect'. Obsoletes fixline1. * example/cryptdir: * example/decryptdir: * example/dislocate: * example/dvorak: * example/ftp-inband: * example/ftp-rfc: * example/gethostbyaddr: * example/kibitz: * example/lpunlock: * example/mkpasswd: * example/multixterm: * example/passmass: * example/read1char: * example/rftp: * example/rlogin-cwd: * example/robohunt: * example/rogue.exp: * example/telnet-cwd: * example/timed-read: * example/timed-run: * example/unbuffer: * example/virterm: * example/weather: * example/xkibitz: * example/xpstat: (user: andreas_kupries size: 640)
#!/bin/sh # -*- tcl -*- # The next line is executed by /bin/sh, but not tcl \ exec tclsh "$0" ${1+"$@"} package require Expect # -*- tcl -*- # Description: unbuffer stdout of a program # Author: Don Libes, NIST if {[string compare [lindex $argv 0] "-p"] == 0} { # pipeline set stty_init "-echo" eval [list 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 [list spawn -noecho] $argv expect exit [lindex [wait] 3] }