Beispielhafter Anwendungsfall:
Ich möchte Telegram Desktop regelmäßig alle 3 Stunden für 15 Minuten starten , um nach neu eingehenden Nachrichten zu suchen. Nach 15 Minuten sollte die Anwendung wieder geschlossen und nach den nächsten 3 Stunden neu gestartet werden.
cron
Sie Programme klar starten. Sie können auch ein Cronkill -15
erstellen, aber es hängt von der Anwendung ab, ob es als sanfter Anstoß zum Herunterfahren behandelt, ignoriert oder einfach abstürzt.Antworten:
Cron versus Hintergrundskript
Natürlich ist das allererste, was einem in den Sinn kommt, die Verwendung
cron
. Ob Sie Cron oder ein kleines Hintergrundskript verwenden, ist hauptsächlich Geschmackssache.Der Vorteil von cron besteht darin, dass es sich an einen vorhandenen Prozess anschließt (obwohl ein Skript der Prozessorlast eigentlich nichts hinzufügt ).
Der Vorteil eines Hintergrundskripts besteht darin, dass es flexibler ist. Beenden Sie es einfach und führen Sie es mit anderen Argumenten aus, wenn Sie die Zeit- oder andere Einstellungen ändern möchten. Sie können es auch mit anderen Anwendungen wiederverwenden, ohne ein anderes Setup durchführen zu müssen. Nur ein Befehl reicht aus.
Das folgende Skript kann mit dem Befehl (z.
Wenn das letzte Argument gesetzt ist, wird die Anwendung mit Gewalt beendet . Wenn nicht festgelegt, wird die Anwendung ordnungsgemäß geschlossen, um sicherzustellen, dass mögliche Änderungen usw. nicht verloren gehen.
Das Skript
Benutzen
cycle_run.py
Führen Sie es mit dem folgenden Befehl aus:
wo:
<command>
ist der Befehl , um die Anwendung auszuführen (ohne--%u
-Abschnitt, in meinem Fall, kopiert aus der.desktop
Datei:/home/jacob/Downloads/Telegram/Telegram
)<cycle_time>
ist die (Gesamt-) Zykluszeit in Minuten (3 Stunden = 180 in Ihrem Beispiel)<application_run_time>
ist die Zeit, die die Anwendung in Minuten ausgeführt werden soll (15 in Ihrem Beispiel)force
ist ein optionales Argument, um die Anwendung gewaltsam zu beenden . Lassen Sie es einfach weg, um die Anwendung ordnungsgemäß zu beenden.Ausführen von Anwendungen mit Argumenten
Wenn Sie eine Anwendung mit Argumenten ausführen, stellen Sie sicher, dass Sie Anführungszeichen um den Befehl verwenden, um die Anwendung auszuführen , z.
Ausführen von Anwendungen minimiert oder in der Taskleiste
Das regelmäßige Starten und Beenden von Anwendungen wird häufig nur minimiert und / oder in der Ablage benötigt. Auf Wunsch des OP einige Anmerkungen dazu:
Wenn eine Anwendung das Starten in der Taskleiste über die Befehlszeile anbietet, verwenden Sie dazu einfach das Argument. Im Fall von
Telgram
lautet das zu verwendende Argument:obwohl die Option nicht auf allen Systemen zu funktionieren scheint (auf meinen), wie hier erwähnt . Sie müssen in Ihrer Situation testen.
Wenn die Anwendung nicht die Befehlszeilenoption zum minimierten oder in der Taskleiste befindlichen Start bietet, würde ich empfehlen, das (dieses) Skript in Kombination mit dem hier beschriebenen (ich würde die
pid
- Version vorschlagen ) zu verwenden, um das Starten zu ermöglichen Die Anwendung wurde minimiert.quelle
Bearbeiten Sie Ihre Cron mit
crontab -e
und fügen Sie diese Zeile in Ihre Crontab ein, um sie alle 3 Stunden als Zeitplanjob auszuführen2.Öffnen Sie Ihr Terminal und geben Sie den folgenden Befehl ein
Öffnen Sie killtelegram.sh mit Ihrem bevorzugten Editor und schreiben Sie wie folgt
Speichern und schließen
das ist es. Es öffnet sich automatisch alle 3 Stunden und bleibt 15 Minuten lang und wird getötet.
quelle