SCRIPT(1)

NAME
script - make typescript of terminal session

SYNOPSIS
script [-a] [-c command] [file]

DESCRIPTION
script makes a typescript of everything printed on your terminal. It is useful for students who need a hardcopy record of an interactive session as proof of an assignment, as the typescript file can be printed out later with lpr(1).

If the argument file is given, script saves all dialogue in file. If no file name is given, the typescript is saved in the file typescript.

The options are as follows:

-a  Append the output to file or typescript, retaining the prior contents.

-c command
    Run command instead of an interactive shell. To run a command with arguments, enclose both in quotes.

The script ends when the forked program exits (a control-D (‘^D’) to exit the Bourne shell (sh(1)), and exit, logout, or control-D (if ignoreeof is not set) for the C-shell, csh(1)). script will exit with the status of 0 unless any of its child processes fail. In which case, script will return 1.

Certain interactive commands, such as vi(1), create garbage in the typescript file. script works best with commands that do not manipulate the screen; the results are meant to emulate a hardcopy terminal.

ENVIRONMENT

SHELL
    Name of the shell to be forked by script. If not set, the Bourne shell is assumed. (Most shells set this variable automatically.)

EXAMPLES
Start a virtual machine and log all console output to a file:

    $ script -c "vmctl start myvm -c" myvm.typescript

HISTORY
A predecessor called dribble appeared in 2BSD. The script command first appeared in 3BSD.

AUTHORS
Mark Horton.

BUGS
script places everything in the log file, including linefeeds and backspaces. This is not what the naive user expects.