//po4a: entry man manual
= scriptreplay(1)
:doctype: manpage
:man manual: User Commands
:man source: util-linux {release-version}
:page-layout: base
:command: scriptreplay
:copyright: ©

== NAME

scriptreplay - play back typescripts, using timing information

== SYNOPSIS

*scriptreplay* [options] [*-t*] _timingfile_ [_typescript_ [_divisor_]]

== 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.

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, *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 *scriptreplay* is sending its output.

The timing information is what *script*(1) outputs to file specified by *--log-timing*.

By default, the typescript to display is assumed to be named _typescript_, but other filenames may be specified, as the second parameter or with option *--log-out*.

If the third parameter or *--divisor* is specified, it is used as a speed-up multiplier. For example, a speed-up of 2 makes *scriptreplay* go twice as fast, and a speed-down of 0.1 makes it go ten times slower than the original session.

== OPTIONS

*-I*, *--log-in* _file_::
File containing *script*'s terminal input.

*-O*, *--log-out* _file_::
File containing *script*'s terminal output.

*-B*, *--log-io* _file_::
File containing *script*'s terminal output and input.

*-t*, *--timing* _file_::
File containing *script*'s timing output. This option overrides old-style arguments.

*-T*, *--log-timing* _file_::
This is an alias for *-t*, maintained for compatibility with *script*(1) command-line options.

*-s*, *--typescript* _file_::
File containing *script*'s terminal output. Deprecated alias to *--log-out*. This option overrides old-style arguments.

*-c*, *--cr-mode* _mode_::
Specifies how to use the CR (0x0D, carriage return) character from log files. The default mode is _auto_, in this case CR is replaced with line break for stdin log, because otherwise *scriptreplay* would overwrite the same line. The other modes are _never_ and _always_.

*-d*, *--divisor* _number_::
Speed up the replay displaying this _number_ of times. The argument is a floating-point number. It's called divisor because it divides the timings by this factor. This option overrides old-style arguments.

*-m*, *--maxdelay* _number_::
Set the maximum delay between updates to _number_ of seconds. The argument is a floating-point number. This can be used to avoid long pauses in the typescript replay.

*--summary*::
Display details about the session recorded in the specified timing file and exit. The session has to be recorded using _advanced_ format (see *script*(1) option *--logging-format* for more details).

*-x*, *--stream* _type_::
Forces *scriptreplay* to print only the specified stream. The supported stream types are _in_, _out_, _signal_, or _info_. This option is recommended for multi-stream logs (e.g., *--log-io*) in order to print only specified data.

include::man-common/help-version.adoc[]

== EXAMPLES

....
% script --log-timing file.tm --log-out script.out
Script started, file is script.out
% ls
<etc, etc>
% exit
Script done, file is script.out
% scriptreplay --log-timing file.tm --log-out script.out
....

== AUTHORS

The original *scriptreplay* program was written by mailto:joey@kitenet.net[Joey Hess]. The program was re-written in C by mailto:jay@gnu.org[James Youngman] and mailto:kzak@redhat.com[Karel Zak]

== COPYRIGHT

//TRANSLATORS: Keep {copyright} untranslated.
Copyright {copyright} 2008 James Youngman

//TRANSLATORS: Keep {copyright} untranslated.
Copyright {copyright} 2008-2019 Karel Zak

This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

Released under the GNU General Public License version 2 or later.

== SEE ALSO

*script*(1),
*scriptlive*(1)

include::man-common/bugreports.adoc[]

include::man-common/footer.adoc[]

ifdef::translation[]
include::man-common/translation.adoc[]
endif::[]
