Script para capturar tela

Publicado por Sandro Marcell 24/11/2007

[ Hits: 8.956 ]

Homepage: http://sanmarcell.wordpress.com

Download cap.sh




Mais um script (in)útil que captura tela em modo gráfico (sem necessidade de executar o import via terminal).

  



Esconder código-fonte

#!/bin/bash --norc
#
# Capturando tela em modo gráfico
# Sandro Marcell (sandro_marcell@yahoo.com.br)
#
# Dependência: import (pacote ImageMagick)

# Funções de chamada rápida:
Qualidade() {
   QIM=$(xmessage -buttons Baixa,Media,Alta -print -center \
"Qual qualidade deseja para tela a ser capturada!")
case $QIM in
   Baixa) QLD=25  ;;
   Media) QLD=50  ;;
   Alta ) QLD=100 ;;
   *    ) exit 1  ;;
esac
}

Info() {
   xmessage -buttons Ok:0,Cancelar:1 -center \
"A tela capturada será salva em $HOME com o seguinte nome:
${0##*/}.jpg
Pressione 'Ok' para capturar ou 'Cancelar' para sair."
[[ $? != 0 ]] && exit 1
}

Teste() {
   if [[ $VLR == 0 ]]
   then
      xmessage -center "Tela capturada com sucesso"
      rm -f /tmp/$$ &>/dev/null
      exit
   else
      xmessage -center -file "/tmp/$$"
      rm -f /tmp/$$ &>/dev/null
      exit 1
   fi
}

# Opções para o usuário:
OPC=$(xmessage -buttons Sim,Nao,Cancelar -print -center \
      "Deseja capturar a tela inteira?")
      
# Verificando e executando a opção escolhida:
case $OPC in
   Sim)
   # Setando a qualidade da imagem com a função 'Qualidade':
   Qualidade
   # Chamando função 'Info':
   Info
   
   # Capturando...
   import -silent -dither -window root -quality $QLD \
   -pause 2 ~/${0##*/}.jpg 2>/tmp/$$
   VLR=$?
   
   # Testando resultado da operação com a função 'Teste':
   Teste ;;

   Nao)
   Qualidade
   Info
   
   # Aviso ao usuário:
   xmessage -buttons Ok:0 -center "Ao clicar em 'Ok' um cursor 
aparecerá, use-o para clicar sobre a janela desejada!"
   [[ $? != 0 ]] && exit 1

   import -silent -dither -screen -quality $QLD \
   -pause 2 ~/${0##*/}.jpg 2>/tmp/$$
   VLR=$?
   
   Teste ;;

   Cancelar) exit ;;
   
   *) exit 1 ;;
esac
# Fim

Scripts recomendados

Calculo de notas - Incrementar um array em shell dinamicamente

Verificando espaço de Disco usando Dialog

Atualiza pacotes

Verifica se quem executa é root

Instalando o Firefox e o Thunderbird


  

Comentários
[1] Comentário enviado por albertguedes em 25/11/2007 - 00:54h

Ei Sandro, você não deveria escrever uma coisa destas.
Todo script é util, desde que não exploda o computador, por razões obvias.
Escreva sempre mais scripts, e nunca esqueça de botar comentários neles.
A prática leva a perfeição.

[2] Comentário enviado por SMarcell em 26/11/2007 - 10:04h

Valeu albertguedes!

Screen capturada com esse script:

>> http://www.vivaolinux.com.br/screenshots/verScreenshot.php?codigo=11040

PS: O link acima com uma screenshot minha foi retirado do ar pela equipe do VOL sem nenhuma explicação (foi boicotado!?).

[3] Comentário enviado por edirlf em 28/11/2007 - 02:16h

que massa

[4] Comentário enviado por SMarcell em 04/01/2008 - 15:36h

Versão atualizada desse script:

http://www.slackbr.org/forum/viewtopic.php?f=45&t=15834

Falou!!!


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts