ttyrec: a tty recorder (original) (raw)

What's ttyrec?

ttyrec is a tty recorder. Recorded data can be played back with the included ttyplay command. ttyrec is just a derivative of script command for recording timing information with microsecond accuracy as well. It can record emacs -nw, vi, lynx, or any programs running on tty.

What's New

Usage

Recording

% ttyrec (In the executed shell, do whatever you want and exit)

% ttyrec -e command (command specified by -e option will be executed)

Playback

% ttyplay ttyrecord

-s2 option makes the playback speed doubled. With -p option, you can peek another person's ttyrecord in real time. Have fun!

You can change the speed while playback by the following key strokes.

File Transfer

ttyrec -u option allows you to transfer a file using uuencode command. you can transfer foo.zip file in a remotehost to a localhost as the following.

% ttyrec -u # Invoke ttyrec command with -u option. % ssh remotehost # Log in to remotehost. % uuencode foo.zip foo.zip # Transfer foo.zip with uuencode. % exit # Log out from remotehost. % ls foo.zip # foo.zip is transfered! foo.zip

You need uuencode command in the remotehost and uudecode command in the localhost. ttyrec -u automatically invokes uudecode command in the localhost when the uuencoded data is tranfered.

Measuring the time of recorded data

ttytime tells you the time of recorded data in seconds.

% ttytime *.tty 173 foo.tty 1832 bar.tty

Let's play with ttyplay server!

You can run "ttyplay server" by simply using inetd. Just add a line like the following to /etc/inetd.conf.

12345 stream tcp nowait root /usr/sbin/tcpd /usr/local/bin/ttyplay /var/tmp/foo.tty 2>/dev/null

And type the following command in the shell.

% telnet localhost 12345

With -p option, live streaming can be performed.

12345 stream tcp nowait root /usr/sbin/tcpd /usr/local/bin/ttyplay -p /var/tmp/foo.tty 2>/dev/null

Please visit tty mania for sample videos.

Suggested by Takuo Kitame

Tips

Recording all-the-day works results a large data file. You can gzip it for saving space and gunzip it for playback.
Suggested by : Takatsugu Nokubi

% gzip ttyrecod % gunzip < ttyrecord.gz | ttyplay

Download

ttyrec is a free software under the terms of the BSD Licence.

Known Problems

ttyrec terminal

I want the ttyrec-built-in terminal...