Antworten:
Ihre Frage macht wenig Sinn. Verwendencd
. Wenn Sie die Antwort nicht verwenden cd
möchten, weil Sie sie ausprobiert haben und sie nicht funktioniert hat, haben Sie sie wahrscheinlich nicht richtig in die Crontab eingegeben.
Am einfachsten wäre es, ein kleines Shell-Skript zu schreiben, das Ihre Hauptaufgabe ausführt und dann das Skript erstellt.
&&
), aber Sie können auch ein separates Skript schreiben, das alle Befehle enthält, und den Pfad zum Skript einfach in cron einfügen, wie von Daenyth vorgeschlagen. Ihr Skript so etwas wie das Lesen Sie das Verzeichnis aus einer Konfigurationsdatei tun könnte , wenn Sie mögen - der Punkt ist, aber Sie den Verzeichnisnamen in das Skript erhalten möchten, es ist keine Entschuldigung , nicht zu verwenden cd
.
Geben Sie einfach den Pfad zum Skript an. Keine Notwendigkeit für cd
:
0 12 * * * /path/to/script args
Wenn Ihr Skript nach Dateien in sucht .
, müssen Sie Folgendes verwenden cd
:
0 12 * * * cd /some/dir && /path/to/script args
&&
, wie in der Antwort auf @WillSheppard verlinkt, wäre besser, als ;
weil &&
nur dann der nächste Befehl ausgeführt wird, wenn der vorherige Befehl erfolgreich war.