Url als Cronjob öffnen in Linux öffnen?

4 Antworten

Mein erster Gedanke war ein automatisches Refresh per Meta-Tag. Aber Du schreibst ja, dass Du die Datei nicht selbst ändern kannst. Da fallen mir zwei Möglichkeiten ein:

Zumindest für Firefox und Chrome gibt es Add-Ons, die das erledigen können: Easy Auto Refresh für Chrome und Tab Auto Reload für Firefox. Ich habe die soeben spontan per Suchmaschine gefunden, habe also keine Erfahrung damit.

Oder aber Du rufst per cron auf:

30 * * * xdg-open file:///home/benutzername/datei.html

Den Pfad zur Datei musst Du natürlich anpassen. Möglicherweise wird Dir xdg-open als "deprecated" angemeckert. Dann verwende gio open stattdessen. Sowohl gio open als auch xdg-open starten den Standard-Browser des Betriebssystems. Möchtest Du den Browser abweichend davon bestimmen, verwende open:

30 * * * open /usr/bin/firefox file:///home/benutzername/datei.html

Das zu verwendende Programm musst Du natürlich anpassen. Der Cronjob macht Dir allerdings jedes Mal einen neuen Tab auf. Wenn Du das nicht möchtest, musst Du ergänzen:

30 * * * open /usr/bin/firefox file:///home/benutzername/datei.html && wmctrl -a Tabname; xdotool key Ctrl+w;

Das schließt Dir den Tab mit dem Namen "Tabname". Ist nur ein Tab offen, kann natürlich auch das Programm als ganzes geschlossen werden. Dann reicht && wmctrl -c firefox am Ende.

Hallo

Ich möchte im Browser automatisch eine .htm Datei, welche in meinem Home-Verzeichnis liegt im Browser öffnen, und alle 30 Minuten aktualisieren.
  • Aber das ist doch eine Angelegenheit welche Serverseitiglaufen sollte.

Du kannst natürlich einen Cronjob nehmen, aber der aktualisiert nicht die bereits geöffnete Seite sondern ruft lediglich den Browser mit der Seite auf. Das kann er tun in jeweils einem neuen Tab ider jeweils in einem neuen Fenster. Egal wie, es ist am Ende mehr anzuraten im gleichen Durchgang auch das Browserfenster zu schließen und dann neu zu starten. - Also ein Script ausführen lassen das all das macht.

Linuxhase

Woher ich das weiß:eigene Erfahrung – Ich benutze seit 2007 Linux und habe LPIC101 und LPIC102

Warum baust du keinen Meta Refresh-header [1] in die HTML-Datei ein, der dir die Seite im Browser automatisch alle 30 Minuten neu lädt?

[1] https://en.wikipedia.org/wiki/Meta_refresh


Leander1212 
Fragesteller
 19.12.2017, 17:51

Das Problem ist dass die Datei von einem anderen Server abgerufen wird. Ich kann eben diese Datei nicht verändern.

0
Kieselsaeure  19.12.2017, 21:56
@Leander1212

Beim verfassen der frage lag sie noch im homeverzeichnis. Hach wie viel doch in 6 stunden passieren kann

0

Also der Cron Teil sieht dann schonmal so aus:

30 * * * *

Der Rest hängt davon ab, welchen Browser du nutzen möchtest.


Leander1212 
Fragesteller
 19.12.2017, 17:50

den Standardbrowser nur

0
ein7264  19.12.2017, 17:55

Die 0 im Stundenteil nicht vergessen, sonst wird der Cronjob nur zur 30'ten Minute jeder Stunde aufgerufen:

0,30 * * * * export DISPLAY=:0 && /usr/bin/google-chrome --new-window http://url-hier-rein

(Pfad zum Browser entsprechend anpassen; DISPLAY muss gesetzt sein)

0