Scripting language to drive other programs.
The man page for "expect" is excellent, but I do recommend the book also.
Two beautiful things about expect are that it can make decisions based on how the driven program responds, and that it can pass control back to you - so, you can, for example, use it to automate the horrid, semi-repetitive part of some task and then turn the reins back to you.
See A Y2K Problem solved with Expect for an example of using Expect.
The only thing I don't like about it is its TCL roots and syntax: tcl is a simply awful language for handling strings, and of course strings are what you mostly deal with in scripting other programs.
Got something to add? Send me email.
Increase ad revenue 50-250% with Ezoic