This post appeared originally in our sysadvent series and has been moved here following the discontinuation of the sysadvent microsite

Ever wanted to record a log of an interactive console session? Easy, just use the script utility. It’s probably already present on your system, no installation required.

To start recording, run script --timing=script.tim script.log. This spawns a new shell, recording stops when you exit from it.

To replay the log, run scriptreplay script.tim script.log. It is also possible to speed up or slow down the playback speed. For example, in order to play back the recording at half of the original speed, use scriptreplay script.tim script.log 0.5. Ctrl+S pauses the playback, Ctrl+Q resumes.

The nice thing about script is that it records everything that happens on the console, it’s not just a simple log of invoked commands. If you open a text editor like vi in the recorded session, you’ll be able to see exactly how and where you navigate the cursor, exactly how and when text was changed - including any typos that were later corrected, and so on.

For the full documentation, check out the manual pages script(1) and scriptreplay(1).

Tore Anderson

Senior Systems Consultant at Redpill Linpro

Tore works with infrastructure at Redpill Linpro. Joining us more than a decade ago as a trainee, Tore is now responsible for our network architecture and operations.

Just-Make-toolbox

make is a utility for automating builds. You specify the source and the build file and make will determine which file(s) have to be re-built. Using this functionality in make as an all-round tool for command running as well, is considered common practice. Yes, you could write Shell scripts for this instead and they would be probably equally good. But using make has its own charm (and gets you karma points).

Even this ... [continue reading]

Containerized Development Environment

Published on February 28, 2024

Ansible-runner

Published on February 27, 2024