SCRIPT(1)

NAME
script - make typescript of terminal session

SYNOPSIS
script [ -n ] [ -s ] [ -a ] [ -q ] [ -S shell ] [ file ]

DESCRIPTION
Script makes a typescript of everything printed on your terminal. The typescript is saved in a file, and can be sent to the line printer later with lpr. If a file name is given, the typescript is saved there. If not, the typescript is saved in the file typescript.

To exit script, type control D. This sends an end of file to all processes you have started up, and causes script to exit. For this reason, control D behaves as though you had typed an infinite number of control D's.

This program is useful when using a crt and a hard-copy record of the dialog is desired, as for a student handing in a program that was developed on a crt when hard-copy terminals are in short supply.

The options control what shell is used. -n asks for the new shell, -s asks for the standard shell. -S lets you specify any shell you want. The default depends on the system: /bin/csh is used where possible, otherwise /bin/sh. If the requested shell is not available, script uses any shell it can find.

The -q flag asks for ``quiet mode'', where the ``script started'' and ``script done'' messages are turned off. The -a flag causes script to append to the typescript file instead of creating a new file.

AUTHOR
Mark Horton

BUGS
Since UNIX has no way to write an end-of-file down a pipe without closing the pipe, there is no way to simulate a single control D without ending script.

The new shell has its standard input coming from a pipe rather than a tty, so stty will not work, and neither will ttyname.

When the user interrupts a printing process, script attempts to flush the output backed up in the pipe for better response. Usually the next prompt also gets flushed.

The new mpx(2) feature could be used to make script work right.