OnWorks favicon

cleop - Online in the Cloud

Run cleop in OnWorks free hosting provider over Ubuntu Online, Fedora Online, Windows online emulator or MAC OS online emulator

This is the command cleop that can be run in the OnWorks free hosting provider using one of our multiple free online workstations such as Ubuntu Online, Fedora Online, Windows online emulator or MAC OS online emulator



cleo - Play back shell commands for live demonstrations




"cleo" is a utility for playing back pre-recorded shell commands in a live demonstration.
"cleo" displays the commands as if you had actually typed them and then executes them

There is probably an easy way to do this with "expect" or a similar tool. But I couldn't
figure it out, so I built this. Your mileage may vary.


"cleo" always pauses and waits for a keypress before displaying a command and before
executing it. Pressing any key besides those listed below will advance the playback:

Key Action
s skip the current command
r redo the current command
p redo the previous command
q quit playback


"cleo" reads commands from a file. Each line is treated as one command. Blank lines and
those starting with "#" will be ignored. The commands themselves can be anything that you
would type into an interactive shell. You can also add a few special tokens that "cleo"

Commands starting with "!!!" (three exclamation points) are not displayed and will be
executed immediately. This is useful for running setup commands at the beginning of
your demonstration.

Within a command, "%%%" (three percent signs) will cause "cleo" to pause and wait for
a keypress before displaying the rest of the command. This is useful if you want to
stop in the middle of a command to give some explanation.

Otherwise, "cleo" displays and executes the commands verbatim. Note that some interactive
commands like "vim" are picky about STDOUT and STDIN. To make them work properly with
"cleo", you may need to force them to attach to the terminal like this:

(exec < /dev/tty vim)


I use this for giving demonstrations of pinto, such as the one seen at
<https://www.youtube.com/watch?v=H-JkFXm8Xgk> (the live demonstration part starts around

The command file that I use for that presentation is included inside this distribution at
examples/pinto.demo. This file is for illustration only, so don't expect it to actually
work for you.


"cleo" only works on Unix-like platforms. It may work on Windows if you use Cygwin.
Personally, I have only used "cleo" on Mac OS X.


Jump to arbitrary command number
Support backspacing in recorded command
Support multi-line recorded commands
Write unit tests

Use cleop online using onworks.net services

Free Servers & Workstations

Download Windows & Linux apps

  • 1
    A Kotlin script that nukes all build
    caches from Gradle/Android projects.
    Useful when Gradle or the IDE let you
    down. The script has been tested on
    macOS, but ...
    Download deep-clean
  • 2
    Eclipse Checkstyle Plug-in
    Eclipse Checkstyle Plug-in
    The Eclipse Checkstyle plug-in
    integrates the Checkstyle Java code
    auditor into the Eclipse IDE. The
    plug-in provides real-time feedback to
    the user about viol...
    Download Eclipse Checkstyle Plug-in
  • 3
    AstrOrz Player is a free media player
    software, part based on WMP and VLC. The
    player is in a minimalist style, with
    more than ten theme colors, and can also
    Download AstrOrzPlayer
  • 4
    Kodi Movistar+ TV es un ADDON para XBMC/
    Kodi que permite disponer de un
    decodificador de los servicios IPTV de
    Movistar integrado en uno de los
    mediacenters ma...
    Download movistartv
  • 5
    Code::Blocks is a free, open-source,
    cross-platform C, C++ and Fortran IDE
    built to meet the most demanding needs
    of its users. It is designed to be very
    Download Code::Blocks
  • 6
    Amidst or Advanced Minecraft Interface
    and Data/Structure Tracking is a tool to
    display an overview of a Minecraft
    world, without actually creating it. It
    can ...
    Download Amidst
  • More »

Linux commands