CLI-Befehl zum Erfassen einer Region mit Verzögerung?

CLI-Befehl zum Erfassen einer Region mit Verzögerung?

Von allen Screenshot-Tools, die ich unter Linux gesehen habe, ksnampshotsieht das von KDE () am leistungsstärksten aus.

ksnapshot --regionist ein Befehl, den ich mit einer Verknüpfung verknüpfen kann, um einen ausgewählten Bereich zu erfassen, ohne die Ksnapshot-GUI zu öffnen.

Die GUI bietet jedoch zusätzlich die Möglichkeit, eine Verzögerung für die Erfassung der Region einzustellen:

Bildbeschreibung hier eingeben

Kann das auch mit einem Befehl gemacht werden? Ich sehe kein in erwähntes Verzögerungsargument ksnapshot --help-all.

Kann ksnapshotoder ein anderes Werkzeug das tun, nämlich so dass eineCLI-Befehl zum Erfassen rechteckiger Bereiche mit Verzögerung?

Antwort1

Es gibt mehrere Möglichkeiten, die einfachste ist wahrscheinlich sleep(1):

sleep 1m && ksnapshot --region ...

Die Verwendung &&anstelle von ;hat den zusätzlichen Vorteil, dass der Befehl mit abgebrochen werden kann CTRL C.

Antwort2

Schauen Sie sich das an man at. Ich glaube so etwas wie:

at -f <(printf %s 'ksnapshot --region ...') 'now + 1 minutes'

wird tun, was Sie wollen.

Dies verwendet die Bash-Prozesssubstitution, damit das Ganze in eine Zeile passt. Wenn es Ihnen nichts ausmacht, den Snapshot-Befehl vor dem Ausführen des Befehls einer Datei hinzuzufügen, sieht es folgendermaßen aus:

at -f file_that_contains_the_command 'now + 5 minutes'

verwandte Informationen