Making a Record of a Program Run:
Now that you are sure the program is working correctly, let's test it
again "for the record." Enter "script p1.script" and wait until the
computer writes a prompt on the screen again. (There may be a slight delay.
The prompt you get now may be different than before.)
Here's an explanation of what you just did: The "script" command
turns on a program that makes a record of whatever appears on the screen. The
command you entered was "script p1.script" so the record the script
program makes will be a file called p1.script.
Enter "a.out" and see your "Hello World!" message written to
the screen again. Now enter "exit" to turn off the scripting
program. From the time you entered "script p1.script" to the time
you entered "exit", all things that were written on the screen were
also recorded in the file called p1.script.
Enter "clear" to clear the screen. Now enter "cat
p1.script". This causes the computer to type the contents of the script
file you made. It should look something like this:
Script started on Sat Aug 21 19:05:11 2004
script done on Sat Aug 21 19:17:37 2004
Note that the script file (named p1.script) starts and ends with "timestamps"
that tell when the script was started, and when it was completed. In between
is the record of what you typed.
Now enter "jove p1.script" so you can look at the script file with
the JOVE editor. You see your script. You also see "weird" characters in the
script like ^M at the end of each line, and maybe some other things. These
characters are an undesirable side-effect of the way the scripting program
interacts with special characters that handle the terminal display. The weird
characters are sometimes visible, and sometimes not, depending on just how you
try to display your script file. The characters were not visible when you
displayed p1.script with "cat," but they were visible when you used
JOVE. Do a C-x C-c command to exit JOVE.
When you turn in a real programming assignment, you will be sending me the
source code, plus a script similar to the one you just made. The script will
be a record that will show me that you did the right kind of testing of your
I require you to run your script through a filter before you send it to me.
It's a way to get rid of most of the weird characters, so the script will be
more readable. It is easy to do the filtering, no matter how big the script
Here's how: Enter "cat p1.script | col -b >
temp". This command pipes the script file to the input of the
command "col -b > temp", which filters out some of the weird
characters and writes the output to a file named temp. Now the temp file is
the filtered version of the script. Enter "mv
temp p1.script" to replace the script file with the new
filtered version. Now enter "jove p1.script" again. See how the
file has been cleaned up? Good. Exit JOVE again by doing a C-x C-c