Pra quase tudo no Linux há uma ferramenta que o permita fazer total ou parcialmente. Há algum tempo precisei fazer uma espécie de “filmagem” dos comandos que iria executar no console de um servidor Linux e que depois iria anexo a documentação de um projeto como uma espécie de “video-tutorial” dos procedimentos. Depois de imaginar milhões de alternativas eu optei pela mais simples e eficiente de todas. Usar o comando “script” que é tão simples quanto útil para estes casos.
Você não leu errado. Não estou me referindo a criar um shell-script ou outra linguagem, mas a usar o comando de nome “script”, que está disponível na instalação padrão da maioria das distribuições.
O seu funcionamento é bem simples. Você o invoca pelo terminal informando o nome de um arquivo onde o resultado da tela será gravado e o nome de um arquivo onde será arquivado o intervalo entre as execuções e pronto. Você estará no seu terminal novamente porém tudo o que você digitar ou for exibido na tela será também registrado para futura visualização como se fosse um vídeo.
Gravando a sessão
Vamos supor que você precise registrar o procedimento de instalação de um sistema qualquer. O exemplo abaixo vai gravar tudo o que for digitado no arquivo instalacao_sistema.txt com o arquivo de temporização instalacao_sistema_tempo.txt
script instalacao_sistema.txt -tinstalacao_sistema_tempo.txt
Ao digitar este comando você verá uma mensagem informando que o script foi inciado e abaixo o prompt de comandos novamente. Use a linha de comandos normalmente para realizar os seus procedimentos de instalação e ao terminar tecle CTRL-D para encerrar.
Se precisar enviar o procedimento para alguém você deverá somente enviar estes dois arquivos que como são texto puro, por mais longa que seja a sua sessão de instalação, resultará em arquivos minúsculos.
Só a título de curiosidade o primeiro arquivo contém a lista de caracteres exibidos na tela durante a sessão salva, já no segundo é uma “tabela” com duas colunas, tempo e quantidade de caracteres exibidos.
Reproduzindo a sessão gravada
Para reproduzir o processo de instalação novamente você deverá usar o comando scriptreplay como no exemplo abaixo:
scriptreplay instalacao_sistema.txt -tinstalacao_sistema_tempo.txt
Tudo que foi executado incluindo as saídas dos comandos serão exibidas na tela como se estivessem sendo executadas novamente.
Observe que nenhum comando será executado novamente. Você estará realmente “reproduzindo” a sessão como se fosse um vídeo.