Scrot: una eina de línia d'ordres per fer captures de pantalla d'escriptori/servidor automàticament a Linux


Scrot (SCReenshOT) és una utilitat de línia d'ordres de codi obert, potent i flexible per fer captures de pantalla del vostre escriptori, terminal o una finestra específica manualment o automàticament mitjançant el treball de Cron. Scrot és similar a l'ordre import de Linux, però utilitza la biblioteca imlib2 per capturar i desar imatges. Admet diversos formats d'imatge (JPG, PNG, GIF, etc.), que podeu especificar mentre feu captures de pantalla mitjançant l'eina.

  1. Amb scrot podem fer captures de pantalla fàcilment sense cap treball addicional.
  2. També podem optimitzar la qualitat de la imatge de les captures de pantalla (amb l'interruptor -q, seguit d'un nivell de qualitat entre 1 i 100. El nivell de qualitat predeterminat és 75).
  3. És molt fàcil d'instal·lar i utilitzar.
  4. Podem capturar una finestra específica o una àrea rectangular a la pantalla amb l'ajuda de l'interruptor.
  5. Pot obtenir totes les captures de pantalla en un directori concret i també pot emmagatzemar totes les captures de pantalla en un ordinador remot o en un servidor de xarxa.
  6. Pot supervisar tots els ordinadors d'escriptori en absència d'administrador i evitar activitats no desitjades.

Instal·lació de Scrot a Linux

Podem instal·lar Scrot a qualsevol distribució de Linux. Si utilitzeu una distribució basada en RedHat o Debian, podeu utilitzar una eina de gestió de paquets com yum o apt-get per instal·lar-la com es mostra a continuació.

# yum install scrot			[On RedHat based Systems]
$ sudo apt-get install scrot		[On Debian based Systems]

Si voleu instal·lar-lo des del codi font, feu servir les ordres següents.

$ wget http://linuxbrit.co.uk/downloads/scrot-0.8.tar.gz
$ tar -xvf scrot-0.8.tar.gz
$ cd /scrot-0.8
$ ./configure
$ make
$ su -c "make install"

Nota: els usuaris de RedHat, han d'especificar la ubicació del prefix amb l'ordre configure.

$ ./configure --prefix=/usr

Com utilitzar Scrot per fer captures de pantalla

Com he dit més amunt, scrot pot capturar un escriptori sencer, un terminal o una finestra específica. Amb l'ajuda de l'scrot també podeu fer captures de pantalla d'un shell/terminal d'un sistema que no té un suport GUI.

Fem una captura de pantalla sencera de l'escriptori, utilitzant l'ordre següent al vostre terminal.

$ scrot /home/tecmint/Desktop.jpg

Si voleu capturar una àrea específica a la pantalla, podeu utilitzar l'ordre següent amb l'interruptor -s que us permet seleccionar de manera interactiva l'àrea amb el ratolí que voleu fer la captura de pantalla.

scrot -s /home/tecmint/Window.jpg

Amb l'ajuda de l'interruptor '-q', podeu especificar el nivell de qualitat de la imatge entre 1 i 100. El nivell d'imatge predeterminat està establert en 75 i la sortida de la imatge serà diferent segons el format de fitxer que especifiqueu.

L'ordre següent capturarà una imatge amb un 90% de qualitat de la pantalla d'alta qualitat original.

$ scrot -q 90 /home/tecmint/Quality.jpg

Ara, si voleu obtenir captures de pantalla automàticament, heu de crear un script de shell senzill. Creeu un fitxer screen.sh amb l'ordre touch i afegiu-hi el contingut següent.

#!/bin/sh
DISPLAY=:0 scrot 'tecmint-%Y-%m-%d-%H_%M.jpg' -q 20 && mv /home/tecmint/*.jpg /media/tecmint

Ara doneu el permís 777 i configureu una feina de Cron.

$ chmod 777 screen.sh

Obriu un fitxer crontab i afegiu l'entrada següent. Podeu definir un interval de temps personalitzat.

$ crontab -e
*/1 * * * * sh /home/tecmint/screen.sh

L'entrada de Cron anterior s'executarà cada 1 minut i farà captures de pantalla i les emmagatzemarà al directori /media/tecmint amb el nom del fitxer com a data i hora. Després d'executar l'script durant 1 minut, això és el que vaig trobar al meu directori tecmint.

Enllaços de referència