Screenshot usando o terminal

Publicado por Lisandro Guerra em 10/02/2014

[ Hits: 27.537 ]

Blog: https://spartanix.com/

 


Screenshot usando o terminal



Algumas vezes, executar uma aplicação gráfica para capturar uma imagem da tela, poderia interferir com o aplicativo que você queira pegar, se for um jogo ou até mesmo um instalador Linux, por exemplo.

Mas, se você usar o comando import do ImageMagick, você pode capturar a tela desejada executando a partir de um terminal.

Para isso, basta ir a um terminal virtual (Ctrl+Alt+F1, por exemplo) e digitar o seguinte:

chvt 7; sleep 2; import -display :0.0 -window root nome_da_foto.png; chvt 1

O comando chvt muda o terminal virtual para o terminal em que o X está rodando (normalmente é o 7), e o comando sleep dá um tempo de espera para capturar a tela.

O comando import captura toda a tela e salva em um arquivo (no nosso exemplo, é chamado de nome_da_foto.png), antes de o comando final chvt levá-lo de volta ao terminal virtual em que o comando foi dado, ou a outro que você queira (no nosso caso, como fizemos Ctrl+Alt+F1, o terminal era o 1).

Poderá até funcionar em instaladores do Linux, muitos dos quais deixam um console rodando em segundo plano. Para funcionar, temos que usar um Pendrive ou CD com o ImageMagick e as bibliotecas de que ele necessita.


Fontes:
Outras dicas deste autor

Instalando o pyenv no Linux Mint e Ubuntu

Mostrando datas passadas e futuras com o comando date

Revista Espírito Livre

OpenSuSE: acesso ao Banco do Brasil

Comandos mkdir e cd simultaneamente

Leitura recomendada

Testando se o servidor está no ar, caso não esteja, a máquina é desligada

Adicionando/Removendo módulos na blacklist através de um script

Passagem de parâmetros para funções shell script

Fazendo backup ou cópia somente dos arquivos alterados no último dia

Backup em shell script na virtualização de máquinas (VMWare)

  

Comentários
[1] Comentário enviado por brunawojtenko em 19/01/2019 - 13:34h

Olá. Obrigada. Porém utilizei esse script, para mim ele está funcionando apenas durante a sessão de uma interface gráfica (no caso, o XFCE4). Ao tentar tirar screenshot da minha tela de login, ele retorna o erro unable to "open X server"

[2] Comentário enviado por Lisandro em 19/01/2019 - 17:14h


[1] Comentário enviado por brunawojtenko em 19/01/2019 - 13:34h

Olá. Obrigada. Porém utilizei esse script, para mim ele está funcionando apenas durante a sessão de uma interface gráfica (no caso, o XFCE4). Ao tentar tirar screenshot da minha tela de login, ele retorna o erro unable to "open X server"


Sua tela de login é gráfica? Está rodando no terminal virtual 7?
Talvez seja o caso de substituir o número do terminal virtual para o número que sua tela de login estiver rodando.
Estou usando atualmente Linux Mint 19.1 com o Cinnamon. Testei aqui e capturou a tela de login tranquilo.
Notei que a captura teve mais detalhes quando usei o "sudo", mas não sei se foi pelo uso ou eu toquei no mouse ou outra coisa.

Obrigado



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner
Linux banner

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts