Benedikt: per Skript andere Skripte aufrufen

Hallo,

ich möchte mit zeitgesteuert mehrere Skripte aufrufen. Allerdings habe ich nur einen Cronjob. Daher möchte ich gerne, aus dem Skript (das von dem Cronjob aufgerufen wird) alle anderen Skripte aufgerufen werden.
Ich hab aber keine Ahnung wie ich das realisieren soll.

Könnt ihr mir weiterhelfen?
Danke schonmal!
Benedikt

  1. Moin!

    #!/bin/sh
    /path/to/script1 mit parametern
    /path/to/script2 mit parametern
    /path/to/script3 mit parametern
    /path/to/script4 mit parametern

    Das würde sie seriell aufrufen

    #!/bin/sh
    /path/to/script1 mit parametern &
    /path/to/script2 mit parametern &
    /path/to/script3 mit parametern &
    /path/to/script4 mit parametern &

    und das parallel

    -- Skeeve

    1. Hallo Skeeve,

      Danke für deine Antwort.
      Allerdings kann ich mit ihr nicht soviel anfangen.
      Ist das ein Shell-Skript?
      Ich habe nur ein Shared Hosting Webpaket und der Cronjob besteht daraus, dass ich im Konfigurationsmenü meines Providers die URL eingebe, die dann vom dem CronJob aufgerufen wird. (hätte ich vll vorhin erwähnen sollen!)

      Gibt es dafür auch eine Lösung?
      Grüße
      Benedikt

      1. Moin!

        Ist das ein Shell-Skript?

        Ja. "#!/bin/sh" sagt genau das.

        Ich habe nur ein Shared Hosting Webpaket und der Cronjob besteht daraus, dass ich im Konfigurationsmenü meines Providers die URL eingebe, die dann vom dem CronJob aufgerufen wird. (hätte ich vll vorhin erwähnen sollen!)

        Hättest Du.

        Gibt es dafür auch eine Lösung?

        Mag sein. Kannst Du eigene CGI programme starten? Dann nimm als URL die eines eigenen CGI Programms. Wenn das in (z.B.) Perl geschrieben sein kann, dann bau darin z.B. ein:

        system qw( /path/to/script mit parameter );

        um die Scripte zu starten.

        Aber mal ehrlich: Das sind zuwenig Informationen (für mich) um Dir da weiterhelfen zu können.

        -- Skeeve

        1. Hallo,

          Danke für eure Hilfe!
          cgi und exec stehen mir leider auch nicht zur Verfügung. Letzters wurde laut Provider aus Sicherheitsgrüden deaktiviert.
          Bin bei meine Recherchen auf die php Funktion fopen gestoßen und habe es mal mit ihr probiert. Ist sicher nicht gerade elegant aber es scheint zu funktionieren.

          Viele Grüße
          Benedikt

          1. Hallo,

            ich war wohl etwas voreilig.
            Leider arbeitet fopen doch nicht so wie ich es mir vorgestellt habe.
            Das Skript wird zwar aufgerufen, aber es arbeitet nicht zu Enden. Ich habe keine Idee woran das liegen könnte. Der Aufruf lautet: fopen ("https://link-zu-meinem-Skript/backup.php", "r");

            Bin für Tips sehr dankbar!
            Benedikt

            1. Hallo,

              hat sich erledigt.
              War ein interner Fehler von mir. Das Skript habe ich mit exit() beendet und das abhängig von einer Bedingung die in dem Fall gerade true war. Daher die Verwirrung.

              Grüße
              Benedikt

      2. Hallo Benedikt,

        Ist das ein Shell-Skript?

        Ja.

        Ich habe nur ein Shared Hosting Webpaket und der Cronjob besteht daraus, dass ich im Konfigurationsmenü meines Providers die URL eingebe, die dann vom dem CronJob aufgerufen wird. (hätte ich vll vorhin erwähnen sollen!)

        Da du deine Frage im Themenbereich PHP stellst, gehe ich davon aus, dass du PHP zur Verfügung hast. Dann müsste unter der vom cronjob aufgerufenen URL eine PHP-Datei erreichbar sein. In der kannst du dann andere Scripte mit Hilfe von exec() starten.

        Schöne Grüße,

        Johannes