So führen Sie ein PHP-Skript als normaler Benutzer mit Cron aus
Cron ist ein leistungsstarkes Dienstprogramm für die zeitbasierte Planung von Jobs in Unix-ähnlichen Betriebssystemen, einschließlich Linux. Es wird als Daemon ausgeführt und kann verwendet werden, um Jobs wie Befehle oder Shell-Skripte zu planen, um Backups durchzuführen, Updates zu planen und vieles mehr, die periodisch und automatisch im Hintergrund zu bestimmten Zeiten, Daten oder Intervallen ausgeführt werden.
Eine Einschränkung von cron besteht darin, dass es davon ausgeht, dass ein System ewig läuft; Es eignet sich also für andere Server als Desktop-Maschinen. Zusätzlich können Sie eine Aufgabe zu einem bestimmten oder späteren Zeitpunkt planen, indem Sie die Befehle 'at' oder 'batch' verwenden: Die Aufgabe wird jedoch nur einmal ausgeführt (sie wird nicht wiederholt).
Empfohlene Lektüre: So planen Sie Aufträge mit Anacron unter Linux
In diesem Artikel erklären wir, wie man einem normalen Systembenutzer erlaubt, ein PHP-Skript über einen Cronjob-Scheduler unter Linux auszuführen oder auszuführen.
Sie können Jobs mit dem Programm crontab (CRON TABle) einplanen. Jeder Benutzer kann eine eigene crontab-Datei haben, die aus sechs Feldern zur Definition eines Jobs besteht:
- Minute – akzeptiert Werte zwischen 0 und 59.
- Stunde – akzeptiert Werte zwischen 0 und 23.
- Tag des Monats – speichert Werte zwischen 1 und 31.
- Monat des Jahres – speichert Werte zwischen 1-12 oder Jan-Dez, Sie können die ersten drei Buchstaben jedes Monatsnamens verwenden, z. B. Jan oder Jun.
- Wochentag – hält Werte zwischen 0-6 oder Sonne-Sa, Hier können Sie auch die ersten drei Buchstaben des Namens eines jeden Tages verwenden, z.B. Sonne oder Mittwoch.
- Befehl – Befehl, der ausgeführt werden soll.
Um Einträge in Ihrer eigenen Crontab-Datei zu erstellen oder zu bearbeiten, geben Sie Folgendes ein:
$ crontab -e
Und um alle Ihre Crontab-Einträge anzuzeigen, geben Sie diesen Befehl ein (der einfach die Crontab-Datei in die std-Ausgabe druckt):
$ crontab -l
Wenn Sie jedoch ein Systemadministrator sind und ein PHP-Skript als ein anderer Benutzer ausführen möchten, müssen Sie es in der Datei /etc/crontab oder in der crontab-Datei des root-Benutzers planen, die ein zusätzliches Feld zur Angabe des Benutzernamens unterstützen:
$ sudo vi /etc/crontab
Und planen Sie die Ausführung Ihres PHP-Skripts so, geben Sie den Benutzernamen nach dem Timing-Abschnitt an.
0 0 * * * tecmint /usr/bin/php -f /var/www/test_site/cronjobs/backup.php
Der obige Eintrag führt das Skript /var/www/test_site/cronjobs/backup.php jeden Tag um Mitternacht als Benutzer tecmint aus.
Wenn Sie das obige Skript automatisch alle zehn Minuten ausführen möchten, fügen Sie den folgenden Eintrag zur crontab-Datei hinzu.
*/10 * * * * tecmint /usr/bin/php -f /var/www/test_site/cronjobs/backup.php
Im obigen Beispiel stellt */10 * * * * * dar, wann der Auftrag ausgeführt werden soll. Die erste Zahl zeigt Minuten – in diesem Szenario auf alle "zehn" Minuten. Die anderen Zahlen zeigen jeweils die Stunde, den Tag, den Monat und den Wochentag.
Vielleicht möchten Sie auch die folgenden verwandten Artikel lesen.
- Verwenden von Shell-Scripting zum Automatisieren von Wartungsaufgaben für Linux-Systeme
- 12 nützliche Verwendung der PHP-Befehlszeile, die jeder Linux-Benutzer kennen muss
- So führen Sie PHP-Codes im Linux-Terminal aus
- 30 nützliche Linux-Befehle für Systemadministratoren
Das ist alles! Wir hoffen, dass Sie diesen Artikel nützlich finden. Wenn Sie Fragen oder zusätzliche Ideen zu diesem Thema haben, verwenden Sie bitte das Kommentarformular unten.