Compartilhando o Terminal

Muitas vezes queremos passar o passo-a-passo de algo para um amigo ou demais pessoas e é simplesmente seguir utilizando o terminal e explicando onde for necessário. Gravar toda a tela com programas como Kazam, Record My Desktop e similares é uma opção, mas talvez não das melhores, ainda mais se você preza por sua RAM.

[ Hits: 4.530 ]

Por: Gildásio Júnior em 29/10/2015


Introdução



Artigo originalmente postado em: [CLI Lindo!] Compartilhando o termial – ShellShare & Asciinema | gjuniioor

Muitas vezes queremos passar o passo-a-passo de algo para um amigo ou demais pessoas e é simplesmente seguir utilizando o terminal e explicando onde for necessário. Gravar toda a tela com programas como Kazam, Record My Desktop e similares é uma opção, mas talvez não das melhores, ainda mais se você preza por sua RAM. haha

Pensando nisso surgiu o ShellShare [1], um projeto do Vitor Baptista, aberto e hospedado no Github. Como o próprio nome já informa, é um software responsável para fazer o compartilhamento do terminal, falarei melhor mais adiante.

Além desse ShellShare - que é como um live do terminal - tem o Asciinema [2], que grava o terminal e deixa online como um vídeo à seu dispor.

Vou fazer duas sessões nesse post: uma sobre o ShellShare e uma sobre o Asciinema, então, eles se completam.

ShellShare

Na própria descrição do projeto é mostrado para o que foi feito, simplesmente: compartilhar o terminal. Apenas como um broadcast, ou seja, quem estiver assistindo não poderá controlar seu computador através deste.

A instalação é muito simples, basta fazer download do binário e ter Python em seu computador. Difícil, não?!

wget -qO shellshare http://get.shellshare.net

A opção '-q' do wget faz com que não haja saída em tela do comando, e a '-O' determina qual o nome do arquivo baixado.

Depois disso, basta dar permissão de execução para ficar melhor utilizável e mover para um caminho do path, se assim quiser.

chmod +x shellshare
$ echo $PATH
$ sudo mv shellshare /usr/bin


Uso:

Depois disso feito, o programa já pode ser utilizado em qualquer lugar do computador. Portanto, basta executar o comando e irá retornar um link. Esse link você passa para quem deve visualizar o compartilhamento e seja feliz!

Para finalizar a execução do ShellShare, use o comando 'exit' ou tecle 'ctrl+d'.

Para fazer um melhor uso, utilize a opção help:

shellshare --help
usage: shellshare [-h] [-v] [-s SERVER] [-r ROOM] [-p PASSWORD]

Transmits the current shell to shellshare

optional arguments:
  -h, --help            show this help message and exit
  -v, --version         show program's version number and exit
  -s SERVER, --server SERVER
                        shellshare instance URL (default: shellshare.net)
  -r ROOM, --room ROOM  room to share into (default: random room)
  -p PASSWORD, --password PASSWORD
                        room's password (default: random password)

Perceba as opções '-r' e '-p' são minhas favoritas. Utilizando elas você pode utilizar uma sala de sua escolha e configurar uma senha, para somente quem a tiver poder acessar. Bacana, não?!

Asciinema

Já falei sobre ele, não há muito o que acrescentar, simplesmente: grava o terminal e disponibiliza na web por um player em js.

Instalação:

Não preciso explicar muito essa parte, já é bem documentada no próprio site do projeto: [3].

Em suma, provavelmente está nos repositórios de sua distribuição.

Uso:

Basta rodar o comando de gravação:

asciinema rec

Após isso vai começar gravar. Para finalizar, digite o comando 'exit' ou pressione 'ctrl+d'.

Automaticamente, após a finalização, vai perguntar se você quer fazer upload, pressionando sim, em instantes irá retornar um link onde poderá assistir à gravação. Por enquanto, esse usuário não está registrado, ou seja, tu não poderá editar nada após isso.

Mas temos uma solução! Execute o comando:

asciinema auth

Que ele vai te passar um link para acessar pelo browser. Após isso, basta inserir e-mail, verificar... Ou seja, basta seguir um procedimento "next like".

Assim como recomendei para o ShellShare, para o asciinema, é bom olhar o help dele para ter uma noção de novas opções.

asciinema --help
usage: asciinema [-h] [-y] [-c <command>] [-t <title>] [action]

Asciicast recorder+uploader.

Actions:
 rec              record asciicast (this is the default when no action given)
 auth             authenticate and/or claim recorded asciicasts

Optional arguments:
 -c command       run specified command instead of shell ($SHELL)
 -t title         specify title of recorded asciicast
 -y               don't prompt for confirmation
 -h, --help       show this help message and exit
 -v, --version    show version information

Como por exemplo a opção '-t' que já configura o cast na web com um título.

Conclusão

Bem, basicamente, é isso! São duas ótimas formas de compartilhar o terminal, sem precisar de um pesado Recorder My Desktop ou um sugador como um Hangouts.

No mais, have fun e até mais ver!

Referências

[1] - https://github.com/vitorbaptista/shellshare
[2] - https://asciinema.org/
[3] - https://asciinema.org/docs/installation

   

Páginas do artigo
   1. Introdução
Outros artigos deste autor

VirtualBox no Arch Linux

EditorConfig - Padronização de código para seus projetos

A pós-instalação do Arch Linux

WeeChat - Um (O) cliente IRC CLI

Copie/Cole conteúdo do terminal para o X e vice-versa

Leitura recomendada

A mágica do dc

Call Center no Linux

Ganhe uma camiseta do Viva o Linux ajudando o Viva o Android

Instalando o Slackware em PC antigos

Analogia: X-Window como um sistema operacional

  
Comentários
[1] Comentário enviado por edps em 29/10/2015 - 22:09h


Engraçado é que essa semana atualizei minha dica no blog:

https://edpsblog.wordpress.com/2015/03/21/how-to-asciinema-expansao/

E já ia mandar para o VOL, mas vc saiu na frente! rsrs estou usando bastante o asciinema, minha última shot contém 4 links sobre um dist-upgrade do Wheezy para o Jessie (sem systemd, pulseaudio ou network-manager):

http://www.vivaolinux.com.br/screenshot/Openbox-Jessie-systemd-free/

O outro eu não conhecia, thanks por compartilhar.


Contribuir com comentário