Expect

Expect is a nice little Unix program. It is meant to automate UNIX commands that never meant to be automated. I used expect to automate a ssh session using username/password rather than a host key.  The “normal” way to automate ssh sessions is to generate public/private ssh  host keys and distribute the public host key to your target servers.  That way you would never have to enter your password in order to log into a remote server.  I didn’t have this option as I wanted to “leave no footprints” on my target servers.

I’ve been wanting to learn expect for years but this was an opportunity to do so in the context of a project.  I had more than  30 servers to log into , examine  some logs and go on to the next server.  Using “expect” I was able to do this in less than 30 seconds vs. 1/2 day doing the same thing manually.