Frage zu AT-Jobs
Posted: 2006-12-04 13:19
Hallo zusammen!
Folgende Anforderung habe ich an AT-Job:
Es soll ein PHP Script ausgeführt werden. Dem Script muss eine Variable angehängt werden, damit des Script den entsprechenden Eintrag in einer DB findet.
Hier der Code der Dateien:
PHP Datei
Aufruf des AT-Daemons
Soweit funzt das alles, nur möchte ich nun der Datei "atjob.php" eine Variable übergeben, z.B. "atjob.php?test=1" oder "atjob.php test=1" oder atjob.php %1" ...
Wenn ich das so schreibe, sagt mir AT folgendes:
Auch ein atjob.php %variable funzt nicht, gleiche Meldung wie eben...
Schreibe ich nun ein Shell-Script
und füge das der AT-Queue hinzu (at -f /pfad_zum_script/atjob.sh -t 200612041315) so kann ich mittels $_SERVER['argv'] auf die übergebene Variable (hier 454) zugreifen (Variablen, die im Shell Script stehen).
Das Problem ist nun, dass ich nicht für jeden Job eine .sh Datei anlegen kann/will, da dann das Verzeichnis mit solchen Dateien zugemüllt wird. Sicher könnte ich sie nach Gebrauch löschen, aber das sollte nur der letzte Ausweg sein.
Weiß hier jemand Rat?
Danke im Voraus!
Gruß Kane
Folgende Anforderung habe ich an AT-Job:
Es soll ein PHP Script ausgeführt werden. Dem Script muss eine Variable angehängt werden, damit des Script den entsprechenden Eintrag in einer DB findet.
Hier der Code der Dateien:
PHP Datei
Code: Select all
#!/usr/local/bin/php
<?
$str_out = "";
for($a=0;$a<count($_SERVER['argv']);$a++)
{
$str_out .= $_SERVER['argv'][$a]."n";
}
mail("meine@email.de","TEST","> ".$str_out." <","From: fhe@fe.den");
?>
Code: Select all
# at -f /pfad_zum_script/atjob.php -t 200612041315
Wenn ich das so schreibe, sagt mir AT folgendes:
Code: Select all
at: bad time specificationSchreibe ich nun ein Shell-Script
Code: Select all
#!/usr/bin/bash
/usr/local/bin/php -f /pfad_zum_script/atjob.php 454
Das Problem ist nun, dass ich nicht für jeden Job eine .sh Datei anlegen kann/will, da dann das Verzeichnis mit solchen Dateien zugemüllt wird. Sicher könnte ich sie nach Gebrauch löschen, aber das sollte nur der letzte Ausweg sein.
Weiß hier jemand Rat?
Danke im Voraus!
Gruß Kane