Ich habe eine Bash-Datei erstellt, die ein Python-Skript auf einem vorhandenen Bildschirm namens "conscreen" ausführt. Die bash-Datei enthält die folgende Zeile:Linux kann nicht auf Bildschirme auf Crontab zugreifen
screen -S cronscreen -X stuff "python test.py$(printf \\r)"
Wenn ich die Datei von der Befehlszeile ausführen, es funktioniert gut, und ich sehe die Ausgabe gedruckt wird, wenn ich mein ‚cronscreen‘ anhängen. Allerdings möchte ich es in cron laufen, also habe ich crontab wie folgt festgelegt:
* * * * * myuser /home/myuser/myscript.sh > /home/ec2-user/agg.log
Der Cron ausgeführt wird, weil ich, dass die Datei agg.log regeneriert wird jede Minute sehen, aber wenn ich anhängen 'conscreen', ich sehe dort keine Ausgabe gedruckt (und agg.log ist leer). Warum das? Vielen Dank.
Update:
Ich habe auch versucht, das Skript zu diesem Wechsel (Wiederanbringen des Bildschirms), aber keine Änderung:
screen -r cronscreen
screen -S cronscreen -X stuff "python test.py$(printf \\r)"
Sie das tun müssen, befestigen Bildschirm trennen von einer aktiven Sitzung, so dass es ein Tty hat und Sie müssen-DmS , um es zu tun – Amias