This program uses the linux script
and scriptreplay
commands to record and replay the output of any desired commands.
This README just contains basic usage information.
For more please consult the documentation.
It is also provided in the docs
folder and can be locally viewed by following these steps:
- Install development dependencies (only required once):
python3 -m pip install -r requirements-dev.txt
- Building the documentation and starting a local webserver:
mkdocs serve
- Open localhost:8000
Install via pip
:
pip install shell-command-logger[full]
To record a command, you just prefix it with scl log
:
scl log ls -1 /
You can use scl replay
to interactively choose and replay a file.
With scl search
you can search logged commands.
For more information see the documentation or run scl --help
.
script
does strange things to input (I think to\r
), so you should not wrap any netcat variants (nc
,ncat
,netcat
).Ctrl+C
killsscl
, even if the program you call would handle the key combination. This is especially annoying with tools likemsfconsole
.
- By default do not attempt to deal with "unnecessary"
\r
added by script ay more. It caused too many troubles. If you want/need the old behavior, set the environment variableSCL_STRIP_CR
to the value1
. - Pass
SIGINT
signals (usually triggered byCtrl-C
) to the process being logged instead of being interrupted -> logging things like shells should work (better) - Removed aliases for problematic tools (msfconsole, nc, ncat, netcat)