script
deve ser o que você está procurando ( página do manual ).
Inicie uma sessão registrada com script /path/to/your/logfile
, cada comando e sua saída serão registrados no arquivo de log.
Se você precisar de informações de tempo para uma reprodução realista, use script -t=/path/to/your/timingfile /path/to/your/logfile
. Depois, você pode reproduzir o log usando scriptreplay /path/to/your/timingfile /path/to/your/logfile
.