2016-06-04 3 views
0

Ich arbeite an einem Skript, um Screenshot alle 10 Minuten mit scrot und crontab für die Wiederholung zu nehmen.Scrot Screenshot Shell-Skript funktioniert nicht in Crontab

Mein Code ist

folder=$(date +"%d-%m-%Y") 

mkdir -p ~/.hostlog/$folder 
sh ~/.hostlog/hostlog.sh >> ~/.hostlog/$folder/$(date +%H-%M-%S).txt & 
scrot ~/.hostlog/$folder/$(date +%H-%M-%S).jpg & 

Als ich das Skript auf Terminal laufen, kann ich einen Screenshot zu bekommen. Aber wenn ich es zu crontab hinzufügen. Ich bekomme keinen Screenshot. Aber ich bekomme die Textdatei dafür.

sh ~/.hostlog/hostlog.sh >> ~/.hostlog/$folder/$(date +%H-%M-%S).txt & 

Ich habe den Ausgang dafür nicht bekommen.

scrot ~/.hostlog/$folder/$(date +%H-%M-%S).jpg & 

Was ist hier falsch?

Antwort

2

Versuchen Sie, die Umgebungsvariable DISPLAY Einstellung, wenn der scrot Befehl ausführen:

DISPLAY=:0 scrot ~/.hostlog/$folder/$(date +%H-%M-%S)