11 de mar de 2013

Screenshots pela linha de comando com Scrot

SCRenn shOT, ou simplesmente "scrot".
Screenshot (foto da tela), é uma função básica para as necessidades diversas de computação, como documentação, mostrar um erro em um programa ou simplesmente exibir sua área de trabalho para os amigos; Particularmente, tenho usado para isso uma função do Gnome, o gnome-screenshot que possui funções muito diversas; O programa "scrot" tem a vantagem de poder ser chamado pela linha de comando pois este não depende de uma interface gráfica para rodar, pois utiliza a imlib2 para manipular imagens; 

A instalação em sistemas GNU/Debian se dá pelo próprio nome do pacote, o qual já instala a imlib2:

aptitude install scrot

Dicas de uso:

Além da man page, o scrot quando chamado com argumento -h apresenta um help muito fácil de entender. Fiz alguns testes para selecionar alguns usos mais comuns os quais listo abaixo para os curiosos testarem:

scrot  -s /tmp/scrot-s.png
A opção -s permite selecionar uma área para seu  scrennshot; O scrot  vai esperar até que seja "clicado" com o mouse uma área, aba, ou qualquer coisa no desktop; Note que neste caso, é indicado o nome para diretório que se deseja arquivar a imagem; Caso não seja indicado, os arquivos serão salvos na área de trabalho do usuário;


scrot  -u /tmp/scrot-u.png
A opção -u vai usar o foco atual do seu terminal:

Uma opção interessante, é poder contar um certo tempo até que seja disparado a captura do Screenshot; por exemplo, você pode desejar chamar o scrot e procurar a tela ou aplicação que deseja capturar; isto pode ser feito da seguinte forma:

scrot  -u -b -d 10 -c /tmp/scrot-border_count.png


Note, que aqui é exemplificado a possibilidade de colocar mais de um argumento na linha de comando,  por exemplo, a opção -d (delay) e  -c  (count) que juntas permitem uma contagem de 10 segundos antes da gravação indicada por -u (focused);

Sendo um programa ao bom estilo de linha de comando (cl); seu uso fica por conta da criatividade de cada um, inclusive, podendo ser usado em um laço for, agendado, utilizado em conjunto Convert que é especialista em manipulação de imagens ou pelo Gimp, para edição etc; Gostou? 

Referências:
man scrot