Anzeige:
Ergebnis 1 bis 8 von 8

Thema: perl script am ende nochmal starten

  1. #1
    Registrierter Benutzer
    Registriert seit
    29.05.2002
    Ort
    Potsdam
    Beiträge
    14

    perl script am ende nochmal starten

    hallo

    ich habe mal eine frage zu perl

    und zwar möchte ich, das ein perl script, wenn es zu ende durchgearbeitet wurde, sich erneut startet.


    danke im vorraus

    M. Alburg

  2. #2
    Registrierter Benutzer
    Registriert seit
    14.01.2002
    Beiträge
    657
    dann führs doch einfach aus mit
    `scriptname`;

  3. #3
    Registrierter Benutzer Avatar von lolli
    Registriert seit
    20.09.2000
    Beiträge
    166
    Dir ist dann aber schon klar, das das eine Endlosschleife ist?!

    Oliver

  4. #4
    Registrierter Benutzer
    Registriert seit
    20.11.2000
    Beiträge
    35
    erklär doch mal in Kurzform, wozu Du sowas benötigst - vielleicht lässt sich ja auch etwas Alternatives finden
    Read Mail Really Fast with rm -r -f

  5. #5
    Registrierter Benutzer
    Registriert seit
    29.05.2002
    Ort
    Potsdam
    Beiträge
    14

    beschreibung

    also ich habe hier ein perl script welches in einer textdatei nachschaut, ob sich was geändert hat. wenn sich was geändert hat, dann schickt es eine mail an mich.

    und jetzt habe ich es für einen durchlauf programmiert und deshlab muss ich es erneut starten. ich wollte es aber auch nicht über den cron machen, da mir da eine kleine zeitliche verzögerung entsteht.


    ich weiss, ich könnte auch einfach eine schleife rumachen, welche solange läuft bis ich das programm mit kill abbreche, aber das will ich nicht.

    ich möchte es in der console laufen lassen und wenn ich STR-C drücke, soll es abgebrochen werden.


    thx M. Alburg

  6. #6
    Registrierter Benutzer
    Registriert seit
    14.01.2002
    Beiträge
    657
    wieso nimmst du keine while (1) schleife her?
    dann kannst du sleep x noch am ende einfügen, damit nicht soviel
    prozessorlast verbraucht wird.
    Mach das nicht so wie ich das geschrieben habe,
    da du sonst ziemlich viele tote Prozesse kriegst, die drauf warten bis
    sich der prozess den sie mit ```ausgeführt haben beendet und das passiert wegen
    der endschleife erst wenn du die prozesse killst.

  7. #7
    Registrierter Benutzer
    Registriert seit
    20.11.2000
    Beiträge
    35
    hi,

    da mich die Sache selbst interessiert hat, habe ich mal schnell ein kleines Snippet geschrieben, um mal die Systemlast zu prüfen. Das Ergebnis konnte ich mir zwar denken, aber jetzt habe ich es schwarz auf weiss: Der Prozess zieht sich die volle CPU-Leistung rein -> Du kannst zwar Dein System trotzdem über den nice-Wert gängig halten, aber die optimale Lösung ist das wohl nicht.

    Ich schliesse mich mal der Aussage von msi an, dass wohl die Definition einer Endlosschleife über while mit einem kurzen sleep drin die eleganteste Lösung ist.

    Von Backticks, welche meiner Meinung nach wie ein system-Aufruf funktionieren, würde ich in jedem Fall abraten -> dann doch eher exec.

    mfg
    Tom
    Read Mail Really Fast with rm -r -f

  8. #8
    Registrierter Benutzer
    Registriert seit
    14.01.2002
    Beiträge
    657
    system auf gar keinem fall, sonst gehen dir irgendwann die systemressourcen aus
    und dann hilft nur noch ein HARD abschalten, da du nicht mal mehr reboot machen
    kannst, nicht mal mehr ls!!!
    ja, hab ich alles schon ausprobiert (in nem Produktivnetz :-)

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •