This document instructs the reader to write a shell program that is similar to the example shell program shown in Figure 1-19, but contains fully functioning code that can be tested. The reader is also encouraged to add additional shell features such as input/output redirection, pipes, and background jobs to the program.