Zeitsteuerung?

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
Blackout
User
Beiträge: 2
Registriert: Dienstag 4. Juli 2006, 16:40

Hallo zusammen,

ich lerne seit ein paar Tagen Python (vorher PHP) und möchte nun einem Bekannten ein kleines Programm schreiben, womit er unter Linux einen bestimmten Systembefehl zeitgesteuert starten kann (so eine Art Videorekorder).

Jetzt zu meinem Problem: Ich habe einfach mal ein paar Zeilen für sowas geschrieben, musste jedoch feststellen, das ich da ein paar Denkfehler drin hatte.

Ein Systembefehl zu einem bestimmten Zeitpunkt starten ist ja nicht das grosse Problem (entweder über Uhrzeitabfrage mittels time-Modul oder systemseitig mittels CRON oder AT).

Mein Problem ist jetzt jedoch, wie ich den Systembefehl mittels Python wieder stoppen kann.

Es soll also ein Programm werden, wo man die Start- und die Endzeit eingeben kann und das Programm startet und beendet dann zu den genannten Zeiten den Systembefehl (z. B. cat /dev/video0 > Video.mpg)

Ich hoffe, Ihr versteht so ungefähr, was ich vorhabe und könnt mir ein paar Anregungen oder Lösungsansätze geben, wie ich das ganze realisieren kann.

Danke im Voraus!!!!
Benutzeravatar
SigMA
User
Beiträge: 181
Registriert: Sonntag 4. April 2004, 13:27
Wohnort: Freiburg
Kontaktdaten:

Code: Alles auswählen

if time.time >= endzeit:
  sys.exit()
Leichtdio.de - Das Kreativ-Blog
http://www.leichtdio.de
Blackout
User
Beiträge: 2
Registriert: Dienstag 4. Juli 2006, 16:40

Wenn ich ein os.system-Aufruf mache (z. B. ein tail -f /var/log/messages/ komme ich gar nicht erst zu der sys.exit-Abfrage, da der os.system-Aufruf ja permanent läuft und erst beim beenden weitergehen würde.

Das war einer meiner ersten Denkfehler!

Ich hatte da schon an Threads gedacht, kenne mich damit aber nicht wirklich aus!
Leonidas
Python-Forum Veteran
Beiträge: 16025
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

Wenn du das Programm startest, musst du die PID rausbekommen, mit dieser kannst du das Programm mit os.kill() beenden.
My god, it's full of CARs! | Leonidasvoice vs (former) Modvoice
Antworten