schnaps12: So was wie Cronejob auf WindowsServer

Hallo

Ich würde gerne erfahren wie ich etwas wie einen Cronejob auf einem Windows Server erledigen kann?

Ich habe ein PHP Script und das müßte einmal die Nacht über das Internet aufgerufen werden.

Wie geht so etwas, unter Linux hab ich es wie gesagt immer mit Cronejobs erledigt, das geht nun nicht mehr.

Wäre nett wenn ihr mir ein paar Tips gebt, hab über Google zu meinem erstaunen nichts gefunden.

Gruß
Schnaps

  1. Hallo,

    google mal nach at oder Task Scheduler.

    gruss

    --
    no strict;
    no warnings;
    man google
    1. Hallo,

      google mal nach at oder Task Scheduler.

      gruss

      Ja Ok der Taskplaner, aber damit kann ich doch keine Webseite aufrufen lassen, oder?

      Ist der nicht nur für Programm Aufrufe zuständig?

      Gruß
      Schnaps

      1. Ja Ok der Taskplaner, aber damit kann ich doch keine Webseite aufrufen lassen, oder?

        Ist der nicht nur für Programm Aufrufe zuständig?

        Dann schreibst dir halt einen Batch Job der die Website aufruft.
        zb:
        mozilla www.meineseite.org

        aber eigentlich müsste das so auch schon gehen.

        1. Ja Ok der Taskplaner, aber damit kann ich doch keine Webseite aufrufen lassen, oder?

          Ist der nicht nur für Programm Aufrufe zuständig?

          Dann schreibst dir halt einen Batch Job der die Website aufruft.
          zb:
          mozilla www.meineseite.org

          aber eigentlich müsste das so auch schon gehen.

          Danke für deine Hilfe, das klingt schon nicht schlecht.

          Aber an der Art meiner Frage erkennt man doch auch schon das ich nicht wirklich viel Ahnung davon habe.

          Wie und wo schreibe ich denn einen Batch Job?
          Ich habe auf dem Server den IE zur Verfühgung, wie spreche ich den denn über den Batch Job an?

          Der Batch Job wird dann über den Taskplaner ausgeführt?

          1. Hallo,

            starte doch einfach mal unter "Start->Ausführen" den Kommandointerpreter "cmd". In dem dann geöffneten Fenster gibst Du dann folgenden Befehl ein. Eventuell musst du "Program Files" durch "Programme" ersetzen oder den Ordner mit dem "IEXPLORE.EXE" suchen.

            "c:\Program Files\Internet Explorer\IEXPLORE.EXE" "http://forum.de.selfhtml.org/?t=100212&m=613608"

            Gruß, Jürgen

            1. Moin.

              "c:\Program Files\Internet Explorer\IEXPLORE.EXE" "http://forum.de.selfhtml.org/?t=100212&m=613608"

              Das geht, hat aber den Nachteil, daß der IE (oder ein anderen Browser) dann offen bleibt. Müßte man nach dem erfolgreichen Aufruf der Seite (wie kriegt man mit, daß die Seite komplett geladen wurde???) noch killen, sonst laufen irgendwann jede Menge IE's amok.

              Gruß Frank

              1. Hallo,

                taskkill?
                (weiss nich ob auf win2000server das command gibt)

                gruss

                --
                no strict;
                no warnings;
                man google
                1. Moin.

                  taskkill?

                  Unter WinXP Prof gehts:

                  c:>"c:\Program Files\Mozilla Firefox\firefox.exe" "www.spiegel.de"

                  c:>TASKKILL /F /IM firefox.exe /T
                  ERFOLGREICH: Der Prozess mit untergeordnetem PID 3180 von PID 3024 wurde beendet.

                  c:>

                  Bleibt die Frage: Wie kriegt man mit, daß die Seite erfolgreich geladen wurde. Alternative: erst Firefox aufrufen, dann nach einer Stunde wieder killen...

                  Oder: ich habe mal eine kurzes Perlscript (Aufruf ohne Parameter gibt eine kl. Hilfe) geschrieben und eine exe daraus gemacht, die macht ein get auf eine angegebenen Seite: http://www.agapanthus.de/get_url.zip (Der Perlcompiler macht aus 1kByte Script 1MByte exe, schmeiße ich deshalb in 2 Wochen wieder vom Server).

                  Gruß Frank

                  1. shit!

                    Da ist ein Fehler im Script (http://www.agapanthus.de/get_url.zip), den korrigiere ich morgen (es geht nur, wenn man einen Proxy angibt...).

                    Gruß Frank

                    1. Moin.

                      Jetzt ist der Fehler raus http://www.agapanthus.de/get_url.zip.

                      Gruß Frank

                2. taskkill?
                  (weiss nich ob auf win2000server das command gibt)

                  das bezweifle ich. ich such aber eh auch so ein kommando für windows. ein kill -9  bzw ein killall würd mir schon öfter die arbeit erleichtern. gibts sowas?

                  mfg
                    franz

              2. Das geht, hat aber den Nachteil, daß der IE (oder ein anderen Browser) dann offen bleibt.

                Ja, wieso öffnet man denn auch den Browserm wenn man nur ein Script ausführen will..?
                Führ einfach die Datei aus. Unter Windows mußt du das Script wahrscheinlich als Parameter an den PHP-Interpreter übergeben, weil Hashbang-Zeile und chmod +x ja nicht funktioniert... Aber Browser starten brauchst du in keinem Fall.

                php -f führ-das-aus.php

                Gruß, rob

  2. Moin.

    Ich würde gerne erfahren wie ich etwas wie einen Cronejob auf einem Windows Server erledigen kann?

    Ich habe ein PHP Script und das müßte einmal die Nacht über das Internet aufgerufen werden.

    Das sind ja gleich 2 Sachen auf einmal. Der Reihe nach.

    1. Es gibt einige kleine Tools, die auch unter Windows einen CronDaemon zur Verfügung stellen (z.B. http://www.kalab.com/freeware/). Selbst Windows kann das, wie Eternius schon geschrieben hat (tipp mal auf der Kommandozeile 'help at' ein).

    2. Das Programm, welches Du starten willst, soll einen per http einen Zugriff auf Dein Script machen. Und es muß ggf. die Internetverbindung herstellen. Den http-Zugriff kriegst Du ganz schnell in Perl hin. Und wenn Du eine FlatRate hast oder Dein Rechner automatisch ins Internet geht (Risiko), dann wars das auch schon.

    #!/usr/bin/perl
    use LWP;
    $ua = LWP::UserAgent->new(agent => 'ZX Spectrum Plus 64k');
    my $req = new HTTP::Request GET => 'http://www.server.de/script.php';
    my $response = $ua->request($req);
    print $response->headers_as_string();
    print $response->content();

    Wäre nett wenn ihr mir ein paar Tips gebt, hab über Google zu meinem erstaunen nichts gefunden.

    Das lag dann wohl an den falschen Suchbegriffen...

    Du kannst aber auch diesen kostenlosen Dienst nutzen: http://www.selfphp.info/index.php

    Schnaps

    Prost!
    Gruß Frank