Capturando tela em modo gráfico (Melhorado)
Publicado por Sandro Marcell 14/10/2008
[ Hits: 6.015 ]
Homepage: http://sanmarcell.wordpress.com
Simples shell script que "tira" screenshots do desktop do usuário.
P.S.: Já havia postado aqui no VoL uma versão desse script, porém, resolvi dar uma exugada em seu código, por isso, estou "repostando" o script!
Espero que curtam...
Falou!!! =)
#!/bin/sh
#
# Capturando tela em modo grafico.
#
# Sandro Marcell (sandro_marcell@yahoo.com.br)
# Boa Vista, Roraima - 04/11/2007 (Atualizado em 17/08/2008).
#
# 17/08/2008
# - Todo o codigo do script foi "enxugado".
#
# Este script pode tirar uma 'screenshot' de toda sua area de trabalho
# ou apenas duma janela especifica. Para tanto, basta que na tela
# inicial se pressione:
# - Botao 'Tela' = Captura toda tela;
# - Botao 'Janela' = Captura janela especifica.
#
# Dependencias: xmessage e import (pacote ImageMagick).
PATH=/bin:/usr/bin:/usr/local/bin
prog=`basename ${0}`
# Definindo a qualidade de captura da imagem:
__defqld__ ()
{
# Caixa de selecao de qualidade:
selec=`xmessage -title "$prog" -buttons Alta,Baixa,Media -print \
-center "Que qualidade deseja para a imagem a ser criada?" `
# Opcao escolhida:
case "$selec" in
Baixa) qld=25 ;;
Media) qld=50 ;;
Alta ) qld=100 ;;
* ) exit 1 ;;
esac
}
# Funcao que verifica o resultado da operacao:
__verifica__ ()
{
# Checando o codigo de retorno do comando 'import':
if [ $cret -eq 0 ]
then
# Captura bem sucedida:
xmessage -title "$prog" -center \
"${HOME}/$$.jpg: "$opc" capturada com sucesso."
# Removendo arquivo de log:
rm -f /tmp/$$
exit
else
# Erro: Informando o erro ocorrido:
xmessage -title "Erro" -center -file /tmp/$$
rm -f /tmp/$$
exit 1
fi
}
# Janela principal: Opcoes disponiveis para o usuario:
opc=`xmessage -title "$prog" -buttons Tela,Janela,Nada \
-print -center "O que deseja capturar?" `
# Verificando e executando a opcao escolhida:
if [ "$opc" = "Tela" ]
then
# Chamando a funcao '__defqld__':
__defqld__
# Capturando...
import -silent -dither -window root -quality "$qld" \
-pause 1 ${HOME}/$$.jpg 2> /tmp/$$
# Armazenando o codigo de retorno do comando 'import':
cret=$?
# Chamando a funcao '__verifica__':
__verifica__
elif [ "$opc" = "Janela" ]
then
__defqld__
# Aviso ao usuario:
xmessage -title "$prog" -buttons Ok:0 -center \
"Ao clicar em 'Ok' um cursor aparecera, use-o para clicar sobre
a janela que deseja capturar!"
# O usuario pressionou o botao 'Ok'?
if [ $? -eq 0 ]
then
import -silent -dither -screen -quality "$qld" \
-pause 1 ${HOME}/$$.jpg 2> /tmp/$$
cret=$?
__verifica__
else
exit $?
fi
elif [ "$opc" = "Nada" ]
then
exit 1
else
exit $?
fi
# Fim
Pós-instalação para Ubuntu 20.04 e Linux Mint 19.03
Mostrando arquivos de forma diferente
Agendamento para desligar ou reiniciar
Samba - Forçar usuário a alterar senha no próximo logon
Monitorando o Preço do Bitcoin ou sua Cripto Favorita em Tempo Real com um Widget Flutuante
IA Turbina o Desktop Linux enquanto distros renovam forças
Como extrair chaves TOTP 2FA a partir de QRCODE (Google Authenticator)
Como realizar um ataque de força bruta para desobrir senhas?
Como usar Gpaste no ambiente Cinnamon
Atualizando o Fedora 42 para 43
ERRO: LAZARUS 4.2 64 no Linux MINT não entra mais apos ajustar desktop... (0)
Pergunta: Meu teclado não está respondendo direito como e consertar? (2)
Secure boot, artigo interessante, nada técnico. (6)
SQLITE não quer funcionar no LINUX LMDE6 64 com Lazaruz 4.2 64bit (n... (0)









