Exercises

  1. Use the -c flag to implement the maxtime script from Chapter 4 (p. 100) but without using a file to store the script.

  2. Figure out how the script on page 212 works.

  3. Redefine your Expect prompt so that it shows the host name, the last two elements in your current working directory, and the history event number. Save this in your .expect.rc file.

  4. Rewrite the script on page 226 so that the references to the user_XXX commands are dynamically generated. Wrap the result in a procedure called app_interpreter.

  5. Using the aftp script in Chapter 6 (p. 141), create aliases in your shell’s .rc file for your favorite hosts so that you can type the host name as the command rather than having to type aftp first.

  6. The rup program shows the status of machines on the local network. Unfortunately, rup can wait a significant amount of time for responses before timing out, and it provides no flags to modify this behavior. Write a rup script that understands a -timeout flag.

  7. The command loop on page 226 can blow up if the user feeds it strings that are not valid lists. Fix the script so that it cannot blow up.

Get Exploring Expect now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.