endlosschleife // immer starten und beenden eines befehls

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
scrat06
User
Beiträge: 4
Registriert: Donnerstag 31. August 2006, 20:51

Donnerstag 31. August 2006, 20:57

Hi.

Ich habe folgendes Problem.

auf meinem server muss ich mit Lynx (Linux-Browser) muss ich ein php-script starten. Das geht auch soweit.
bloß ab und zu stürtzt das script ab / lynx hört auf zu laden, und der befehl muss nochmal eingegeben werden. Doch das script muss immer laufen, und ich bin nicht immer da um das script neuzustarten.
mir wurde gesagt, dass sowas über python gehen könnte.

Bloß leider hab ich überhaupt keine ahnung von python.
deshalb nun meine frage:

wie könnte ein solches script aussehen, und wie starte ich das script dann auf meinem server (vserver mit root-access)?

Kann man mit python auch direkt internetseiten aufrufen, sodass ich den lynx befehl rauslassen kann?

Vielen dank schonmal :)


vg scrat :roll:
Leonidas
Administrator
Beiträge: 16024
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

Donnerstag 31. August 2006, 21:09

scrat06 hat geschrieben:Kann man mit python auch direkt internetseiten aufrufen, sodass ich den lynx befehl rauslassen kann?
Ja, urllib leistet da gute Dienste.
My god, it's full of CARs! | Leonidasvoice vs Modvoice
scrat06
User
Beiträge: 4
Registriert: Donnerstag 31. August 2006, 20:51

Donnerstag 31. August 2006, 21:43

k.. dankeschöön..

und wie könnte das nun in so nem script aussehen?

Ich könnte mir das zwar alles zusammensuchen, bloß ich glaub, dass das eigentlich nicht so schwer ist, wenn man python kennt.
Und wenn ihr das fix aufschreibt, gehts bestimmt schneller, als wenn ich stunden im inet mir nen script zusammensuche.. :roll:

vg scrat :)
BlackJack

Freitag 1. September 2006, 10:20

Es ist sehr einfach und sollte nicht stundenlang dauern und Du lernst etwas dabei wenn Du's selbst machst. Zum Beispiel Doku lesen.
scrat06
User
Beiträge: 4
Registriert: Donnerstag 31. August 2006, 20:51

Freitag 1. September 2006, 15:54

aber ich weiss ja ncihma, wie so ein script überhaupt aussieht... erst recht nich, wie ich da ne schleife hinbekomme...

naja...

trotzdem vielen dank
Joghurt
User
Beiträge: 877
Registriert: Dienstag 15. Februar 2005, 15:07

Freitag 1. September 2006, 20:51

scrat06 hat geschrieben:aber ich weiss ja ncihma, wie so ein script überhaupt aussieht...
Steht doch in der Doku
Benutzeravatar
Rebecca
User
Beiträge: 1662
Registriert: Freitag 3. Februar 2006, 12:28
Wohnort: DN, Heimat: HB
Kontaktdaten:

Samstag 2. September 2006, 09:59

scrat06 hat geschrieben:Doch das script muss immer laufen, und ich bin nicht immer da um das script neuzustarten.
Klingt, als koennte dir cron helfen.
scrat06
User
Beiträge: 4
Registriert: Donnerstag 31. August 2006, 20:51

Montag 4. September 2006, 14:41

Danke für die Idee, Rebecca ! ;)

Ich hab das jetzt mal über cron gemacht, also was bei crontab eingegeben.

*/5 * * * * screen

dann passiert aber nix..

muss ich da vor dem screen noch was angeben? also z.B. /usr/bin/ ?
weil in einigen Anleitungen habi ch in den beispielen immer das so gelesen...

vg scrat
Benutzeravatar
Rebecca
User
Beiträge: 1662
Registriert: Freitag 3. Februar 2006, 12:28
Wohnort: DN, Heimat: HB
Kontaktdaten:

Dienstag 5. September 2006, 10:12

scrat06 hat geschrieben:muss ich da vor dem screen noch was angeben? also z.B. /usr/bin/ ?
Im Zweifelsfall immer den kompletten Pfad angeben. In meiner /etc/crontab steht am Anfang PATH=/usr/bin:/usr/sbin:/sbin:/bin:/usr/lib/news/bin, d.h. diese Pfade braucht man nicht angeben. Schadet aber auch nicht.

Mit screen kenne ich mich nicht so gut aus, aber gibt ja was ans Terminal aus und erwartet Eingabe vom Terminal. Stellt sich die Frage, was das controlling tty fuer einen Cron-Job ist? Evtl. laeuft dein screen, ohne dass du davon irgendwas mitbekommst, oder weigert sich zu starten...

Am besten probierst du mal ein Programm aus, das etwas in eine Datei schreibt. Ich habe mir folgendes unter /home/rbreu/test.sh gespeichert (an die richtigen Rechte denken):

Code: Alles auswählen

#!/bin/sh

echo "hallo" >> test.txt
Dann folgendes in meiner Benutzer-Crontab via crontab -e eingetragen:

Code: Alles auswählen

*/1 * * * * /home/rbreu/test.sh
(Zeilenumbruch nach der letzten Zeile ist wichtig!). Funktioniert bei mir, meine test.txt wird, waehrend ich dies schreibe, immer laenger...
Antworten