.TH SCRIPTREPLAY 1 "September 2011" "util-linux" "User Commands"
.SH "NAME"
scriptreplay \- play back typescripts, using timing information
.SH "SYNOPSIS"
.B scriptreplay
[options]
.RB [ \-t ]
.I timingfile
.RI [ typescript
.RI [ divisor ]]
.SH "DESCRIPTION"
This program replays a typescript, using timing information to ensure that
output happens in the same rhythm as it originally appeared when the script
was recorded.
.PP
The replay simply displays the information again; the programs
that were run when the typescript was being recorded are not run again.
Since the same information is simply being displayed,
.B scriptreplay
is only guaranteed to work properly if run on the same type of
terminal the typescript was recorded on.  Otherwise, any escape characters
in the typescript may be interpreted differently by the terminal to
which
.B scriptreplay
is sending its output.
.PP
The timing information is what
.BR script (1)
outputs to standard error if it is
run with the
.B \-t
parameter.
.PP
By default, the typescript to display is assumed to be named
.BR typescript ,
but other filenames may be specified, as the second parameter or with option
.BR \-s .
.PP
If the third parameter is specified, it is used as a speed-up multiplier.
For example, a speed-up of 2 makes
.B scriptreplay
go twice as fast, and a speed-up of 0.1 makes it go ten times slower
than the original session.
.SH OPTIONS
The first three options will override old-style arguments.
.TP
.BR \-t , " \-\-timing " \fIfile\fR
File containing \fBscript\fR's timing output.
.TP
.BR \-s , " \-\-typescript " \fIfile\fR
File containing \fBscript\fR's terminal output.
.TP
.BR \-d , " \-\-divisor " \fInumber\fR
Speed up the replay displaying this
.I number
of times.  The argument is a floating point number.  It's called divisor
because it divides the timings by this factor.
.TP
.BR \-m , " \-\-maxdelay " \fInumber\fR
Set the maximum delay between transcript updates to
.I number
of seconds.  The argument is a floating point number.  This can be used to
avoid long pauses in the transcript replay.
.TP
.BR \-V , " \-\-version"
Display version information and exit.
.TP
.BR \-h , " \-\-help"
Display help text and exit.
.SH "EXAMPLE"
.nf
% script --timing=file.tm script.out
Script started, file is script.out
% ls
<etc, etc>
% exit
Script done, file is script.out
% scriptreplay --timing file.tm --typescript script.out
.nf
.SH "SEE ALSO"
.BR script (1)
.SH "COPYRIGHT"
Copyright \(co 2008 James Youngman
.br
Copyright \(co 2008 Karel Zak
.PP
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR
PURPOSE.
.PP
Released under the GNU General Public License version 2 or later.
.SH "AUTHOR"
The original
.B scriptreplay
program was written by
.MT joey@\:kitenet.net
Joey Hess
.ME .
The program was re-written in C by
.MT jay@\:gnu.org
James Youngman
.ME
and
.MT kzak@\:redhat.com
Karel Zak
.ME .
.SH AVAILABILITY
The scriptreplay command is part of the util-linux package and is available from
.UR https://\:www.kernel.org\:/pub\:/linux\:/utils\:/util-linux/
Linux Kernel Archive
.UE .
