Automatisches Bildschirmaufnahme-Skript

Automatisches Bildschirmaufnahme-Skript

Ich möchte genau das erreichen, was Anwar Shah hier beschreibtBash-Skript zum Erstellen eines Screenshots und Speichern des Bildes – Ubuntu

mit der zusätzlichen Funktion, ein Zeitinkrement festzulegen, in dem das Skript weiterhin Bildschirmaufnahmen macht. Ich möchte beispielsweise dieses Skript ausführen können und es alle 5 Sekunden Screenshots als JPEGs erstellen und exportieren lassen und so weitermachen lassen, bis ich das Skript beende.

Gibt es dafür eine einfache Lösung?

Antwort1

Ja:

#! /bin/bash
while sleep 5
do    
    shutter -f -o 'myshot-%T.jpg' -e
done

DersleepDer Befehl kann verschiedene Zeitdauern als Argumente annehmen: 5s(oder nur 5) für 5 Sekunden, 129mfür 129 Minuten usw.
DershutterDer Befehl unterstützt JPEG-Ausgabe und %Tweist Shutter an, diesen Teil automatisch durch die Zeit des Skripts zu ersetzen. (Außerdem kann %NNShutter angewiesen werden, einen Zähler zu verwenden.)

Antwort2

In meinem .bashrcdefiniere ich eine Funktion screenshotzur Verwendung von ImageMagik:
Screenshot ()
{
import -window root ~/var/screenshot/$(tshhmmss)_screendump.png
}

und für den Zeitstempel:

alias tshhmmss='date +%y%b%d-%H%M%S'

Dann ist das Einwickeln while sleep 5 ...ganz einfach.

verwandte Informationen