Scripting sh sessions
Bill Nickless
bnick at aucis.UUCP
Wed Jan 11 10:40:40 AEST 1989
In article <4861 at mtgzz.att.com>, avr at mtgzz.att.com (a.v.reed) writes:
>
> In article <9877 at drutx.ATT.COM>, csr at drutx.ATT.COM (Steve Roush) writes:
> > For strictly interactive use, I use "cu". ....
> > I do not know of any UNIX programs outside of AT&T that allow scripting
> > of sessions as can be done under DOS.
>
> Oh yes you do, unless you've never heard of "tee".
> And here is how you script a local sh session:
>
> $ tee -ia script.out | sh -is 2>&1 | tee -ia script.out
Only one problem. Unless you are on a tty line, the standard I/O stuff
such as printf buffer a solid 512 bytes. (That can be changed by adding
a setbuf() line.) Consider the following program:
----cut here----
#include <stdio.h>
char s[80];
main()
{
printf("Enter a string:");
gets(s);
printf("You entered:%s\n",s);
}
----cut here----
When you execute it in the scripted session, you don't get the prompt
"Enter a string:" until AFTER you've entered it!
This of course can be fixed if you have the source, but that can't be
assumed for every program.
--
William (Bill) Kirk Nickless Andrews University
305 Meier Computer and Information Science Department
Berrien Springs, MI 49104 UNIX Support Group
(616) 471-6515 or (616) 471-3422 ...!uunet!cucstud!aucis!bnick
More information about the Comp.unix.questions
mailing list