bash | tee /dev/tty ./bashout
При этом все stdout сохраняются в bashout.
bash | tee /dev/tty | tail > ./bashout
Хвост stdout каждой команды записывается в bashout.
bash | tee /dev/tty | sed -e :a -e '10p;$q;N;11,$D;ba' > ./bashout
Первые и последние 10 строк стандартного вывода каждой команды записываются в bashout.
Они не сохраняют команду, но если вы измените команду save_command для печати команды в стандартный вывод, она попадет туда.