xref: /csrg-svn/usr.bin/script/script.1 (revision 19285)
Copyright (c) 1980 Regents of the University of California.
All rights reserved. The Berkeley software License Agreement
specifies the terms and conditions for redistribution.

@(#)script.1 4.1 (Berkeley) 04/29/85

SCRIPT 1
C 4
NAME
script - make typescript of terminal session
SYNOPSIS
script [ -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.

-S lets you specify the shell to use. The default depends on the system: If the variable SHELL is set in the environment, it is used if possible.

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. In particular, this means that screen editors such as vi (1) and the job control facilities of csh (1) are inoperative.

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.