Registro de sessões terminais em Linux usando asciinema

Registro de sessões terminais em Linux usando asciinema

Asciinema é um utilitário de linha de comando de código aberto e livre que pode ser usado para gravar sessões de terminal em distribuições Linux. Ele pode capturar comandos e sua produção em alta qualidade e produz texto nítido e claro, melhor do que outras ferramentas de gravação e screencasting de tela usadas para capturar uma sessão de desktop inteira.

Principais características do asciinema

Além de gravar a saída de texto visível em um emulador de terminal, asciinema pode anexar uma sessão de gravação em andamento a uma saída gravada anteriormente, permitindo que os usuários criem um fluxo contínuo a partir de vários elencos.

A saída capturada pelo asciinema pode ser reproduzida a qualquer momento em sua instalação do Linux. Você também pode fazer upload da saída capturada no site da Asciinema e compartilhá -lo com outras pessoas. Se você possui um site ou aplicativo da web, pode incorporar a saída capturada e reproduzi -lo em um navegador da web ou contêiner de aplicativos da web.

Observe que a saída capturada não é renderizada em formatos de vídeo como MP4 e WebM. Ele é renderizado em um formato personalizado chamado "AsciiCast" e pode ser reproduzido apenas por asciinema. Um jogador baseado em JavaScript para reprodução capturou a saída AsciiCast em navegadores da web está disponível no site da Asciinema.

Instalando asciinema no Linux

Você pode instalar asciinema na versão mais recente do Ubuntu, executando o comando abaixo:

$ sudo apt install Asciinema

Você também pode instalá -lo usando o PIP Package Manager no Ubuntu e outras distribuições Linux. Para fazer isso, execute os dois comandos a seguir no Ubuntu:

$ sudo apt install python3-pip
$ PIP3 Instale asciinema

Mais pacotes e outras instruções de instalação específicas de distribuição estão disponíveis aqui.

Usando asciinema no Linux

Para começar a gravar a saída do terminal, execute o comando Asciinema no seguinte formato:

$ Asciinema rec

Asciinema começará a gravar a saída do shell assim que você executar o comando. Ele mostrará uma mensagem no terminal, conforme mostrado na captura de tela abaixo:

Como você pode ver na saída acima, asciinema começou. Qualquer coisa que você digite ou execute no terminal depois que a gravação for iniciada, será capturada e salva em um “.Arquivo de elenco ”. A gravação pode ser interrompida pressionando a tecla ou digitando o comando "saída".

Depois de parar a gravação em andamento, você será solicitado a salvá -lo no disco rígido local ou carregá -lo no site oficial de asciinema. Você pode pressionar a tecla para fazer o upload de asiCasts capturados on -line ou pressionar o atalho do teclado para salvá -lo no disco local (como mostrado na captura de tela abaixo):

Por padrão, asciinema salva a saída capturada na pasta "tmp". Para salvar um Asciicast em um local personalizado em um disco de armazenamento local sem enviá -lo on -line, forneça um caminho de arquivo para o comando "REC". Aqui está um comando de exemplo:

$ asciinema rec "$ home/downloads/arquivo.elenco"

Para fazer o upload manualmente um AsciiCast capturado no site da Asciinema, execute um comando no formato a seguir (substitua o caminho do arquivo conforme necessário):

$ Asciinema upload/completo/path/to/arquivo.elenco

Para adicionar uma nova gravação a um asicast existente, use o comando "Apênder" em seguir o formato (uma nova sessão de gravação será iniciada e a saída será anexada ao fornecimento ".Arquivo de elenco):

$ Asciinema rec -Append/Full/Path/To/File.elenco

Depois de ter um “.FILE "CAST", você pode reproduzi -lo usando o seguinte comando (substitua o caminho do arquivo conforme necessário):

$ Asciinema reproduzir completo/caminho/para/arquivo.elenco

Aqui está uma pequena demonstração mostrando asciicasts de asciinema em ação:

Observe que esta uma animação de GIF reduzida, ela não mostra a saída capturada em toda a sua qualidade em alta definição. Você tem que jogar o “.Coloque ”Faça arquivar -se em sua distribuição Linux para assisti -la em toda a qualidade ou você deve incorporar a saída capturada em um site e depois reproduzi -lo usando a Biblioteca de Asciinema JavaScript. Você também pode visualizar um asicast em alta qualidade depois de carregá -lo no site de Asciinema.

Aqui está uma amostra Asciicast de alta definição que você pode assistir em um navegador da web visitando o site oficial de asciinema.

Para obter mais informações sobre o utilitário de linha de comando Asciinema, execute os dois comandos a seguir:

$ Man Asciinema
$ Asciinema -Help

Você também pode procurar documentação oficial online daqui.

Incorporar asciicast em seu próprio site ou aplicativo da web

Se você deseja apenas compartilhar uma sessão capturada on -line e não possui seu próprio site ou aplicativo da web, o melhor método é enviá -lo on -line no site oficial do Asciinema usando os comandos explicados acima e depois compartilhar o link URL com outros.

Para incorporar um Asciicast em seu próprio site ou aplicativo da web, você precisará adicionar o script de player de asciinema ao seu arquivo html visitando a página em que seu asicast foi carregado online. Por exemplo, para incorporar a amostra de Asciinema vinculada acima, clique no botão "Compartilhar" na página da Web Asciicast para obter o código de incorporação. Aqui está uma captura de tela mostrando isso:

Se um arquivo HTML muito simples contiver o seguinte código:

Esta é uma amostra de asciiCast.


Você verá jogador incorporado em sua página da web como esta:

Conclusão

Asciinema fornece um método para capturar a saída baseada em texto em alta qualidade. Ao contrário de outros métodos de gravação e captura de vídeo, o Aciinema salva dados brutos de uma sessão capturada em um arquivo de texto e reproduzem de volta bit a pouco. Isso produz texto nítido e claro como se você estivesse executando os comandos e com o texto em seu próprio hardware em tempo real.