PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Zeitveretztes starten eines programmes



ChMaster|LFreak
25-08-2004, 09:14
Hallo,
(shellscript)
habe da ein problem, ich möchte ein programm zeitversetzt starten.
einmal um 7:00Uhr früh und einmal um 16:00 nachmittag.
wie stelle ich dies an?

kann ich es auch mit date '+%H' machen und per schleife die zeit abfragen
oder gibt es eine andere möglichkeit, wenn ja wie und wenn ich es mit date mache, wie geht dies dann?

gruß
ChMaster|LFreak

peschmae
25-08-2004, 09:22
wie wärs mit cron? Musst halt eventuell zwei Einträge in der Crontab machen.

MfG Peschmä

ChMaster|LFreak
25-08-2004, 09:33
jup cron würde auch gehen, aber leider weiss ich nicht wie ich es anstellen soll.

hier ist mal mein kleines shellcript :)



echo
OPTIONS="AntiVir(Update) AntiVir(Scan) AntiVir(Zeitversetzter-scan) Beenden"

select opt in $OPTIONS; do
if [ "$opt" = "AntiVir(Update)" ]; then
echo
echo "Schaue nach update fuer AntiVir..."
antivir --update
sleep 5
exec ./antivir-scan


elif [ "$opt" = "AntiVir(Scan)" ]; then
echo
echo "Starte Ueberpruefung (dies kann eine weile"
echo "dauern, es kann passieren das SuSE n nicht"
echo "reagiert, keine PANIC der Scanvorgang wird"
echo "mitprotokolliert - Datei: antivir-scan.log"
antivir /dagi/ -allfiles -s --alltypes -nolnk -z -del -dmdas -rf/root/bin/antivir/avlinux.log -ro -lang=DE
exec ./antivir-scan

elif [ "$opt" = "AntiVir(Zeitversetzter-scan)" ]; then
export day='date '+%T''
if [ "$day" = "16:00:00" ]; then
echo "Hallo"
sleep 5
fi
sleep 2
exec ./antivir-scan

elif [ "$opt" = "Beenden" ]; then
echo "Ende!! :)"
exit
else
echo "Falsche Option"
exec ./antivir-scan
fi
done


bei der funktion elif [ "$opt" = "AntiVir(Zeitversetzter-scan)" ]; then möchte ich es benutzen und er soll es jedesmal ausführen um die gleiche zeit also einmal 7:00Uhr und einmal 16:00Uhr jeden tag.

Gruß
ChMaster|LFreak

elrond
25-08-2004, 10:10
ein einfacher eintrag in die crontab sollte helfen:

0 7,16 * * * ~/scriptdir/script.pl

peschmae
25-08-2004, 14:09
Falls das Programm irgendwelchen Output generiert kriegst du den lokal per Mail zugestellt. Möchtest du das nicht hängst du noch ein "2<&1 >/dev/null" hintendran (z.B. wenn du eh in den Logdateien nachguckst)

MfG Peschmä

tuNIxM1TUniX
25-08-2004, 16:36
cron ist schon ok für solche Aufgaben. Und den Output kannste auch mit '&>/dev/null' entsorgen. :D

ChMaster|LFreak
26-08-2004, 07:35
danke :D

gruß
ChMaster|LFreak