Cron-taken maken en toevoegen in Linux

Periodieke taken plannen met Cron in Linux

cron is een Linux-programma dat wordt gebruikt om een ​​opdracht of script op een later tijdstip uit te voeren. Het kan ook worden gebruikt om periodiek uitgevoerde opdrachten en scripts te plannen. Programma's die zijn gepland met cron worden gewoonlijk aangeduid als: Cron-banen. Het wordt voornamelijk gebruikt voor systeembeheertaken zoals regelmatige back-ups, regelmatige software-updates en andere soortgelijke onderhoudstaken.

Invoering

cron draait als een daemon in Linux, d.w.z. als een achtergrondproces. Hiermee kunnen gebruikers taken rechtstreeks plannen met de opdracht crontab, waarmee een configuratiebestand met de naam Cron File in een editor wordt geopend. Voor elke gebruiker worden aparte Cron-bestanden gemaakt.

Een cron-bestand en basissyntaxis maken

De crontab commando kan worden uitgevoerd met -e vlag om een ​​bestaand Cron-bestand te bewerken. Als het bestand nog niet bestaat, wordt het gemaakt. Als de gebruiker de opdracht voor de eerste keer aanroept en als er meerdere bestandseditors op het Linux-systeem zijn geïnstalleerd, zal de opdracht de gebruiker vragen om een ​​standaardeditor te kiezen uit een lijst met editors.

Na het kiezen van de editor wordt een cron-bestand voor de gebruiker gemaakt en geopend. U kunt nu taken in het bestand specificeren.

De algemene syntaxis voor het specificeren van een Cron Job is:

Kortom, de loopt op de opgegeven 'minuten' (0-59), 'uur' (0-23), 'dag van de maand' (1-31), maand (1-12), dag van de week (0-7, Voor zondag kan 0 of 7 worden gebruikt) in de Cron Job. Laten we om het te vereenvoudigen een voorbeeld nemen:

1 2 3 4 5 echo "Hallo"

Dit betekent het commando echo "Hallo" loopt op elke vijfde dag van de week (vrijdag) en elke 3e dag van de maand, elke 4e maand van het jaar (april), om 02:01 uur (2e uur eerste minuut).

Als dezelfde opdracht elke dag om 02:01 moet worden uitgevoerd, ziet de syntaxis er als volgt uit:

1 2 * * * echo "Hallo"

De * betekent 'altijd' of 'voor iedereen', bijv. voor alle maanden, voor alle dagen van de week, enz.

De commando-operator (,) kan worden gebruikt om een ​​lijst met waarden in te voeren wanneer de taak moet worden herhaald. Bijvoorbeeld:

0 2,3,4 * * * echo "Hallo"

Hierdoor wordt het programma elke dag om 2 uur, 3 uur en 4 uur uitgevoerd.

evenzo, een koppelteken (-) operator kan worden gebruikt om een ​​bereik op te geven waarvoor de taak moet worden herhaald. Bijvoorbeeld:

0-20 2 * * * echo "Hallo"

Hierdoor wordt het programma uitgevoerd om 02:00, 02:01, 02:02, enzovoort tot 02:20.

Eindelijk hebben we de schuine streep ( / ) exploitant. Deze operator wordt gebruikt om een ​​intervalwaarde op te geven op basis waarvan de taak zal worden herhaald. bijv. */15 in het minutenveld betekent dat de taak elke 15 minuten moet worden herhaald. 2-10/2 in het urenveld specificeert dat de taak tussen 2 uur 's ochtends en 10 uur 's ochtends moet worden herhaald na elk interval van 2 uur (2 uur, 4 uur, 6 uur, 8 uur, 10 uur).

*/15 2-10/2 * * * echo "Hallo"

Nadat u de invoer in het Cron-bestand hebt gemaakt, slaat u het bestand op en verlaat u de editor.

Je zou eens moeten zien 'nieuwe crontab installeren' bericht in de terminal na het opslaan en afsluiten van het crontab-bestand.

Macro's

Bepaalde macro's zijn vooraf gedefinieerd in Cron, die enkele vaak vereiste tijdsintervallen specificeren, zoals elk uur, elke dag, elke maand, enz.

Om een ​​taak één keer per dag uit te voeren aan het begin van de dag, d.w.z. om 00:00, gebruik je macro @dagelijks. Dit is gelijk aan 0 0 * * *.

Deze kun je op dezelfde manier als eerder beschreven in het Cron-bestand zetten.

Op soortgelijke wijze kunnen de andere macro's worden gebruikt, nl. @uurtje (minuut 0 van elk uur), @maandelijks (00:00 van de eerste dag van de maand), @wekelijks (00:00 van de eerste dag van de week, @jaarlijks(elk jaar om 00:00 uur op 1 januari), @reboot (bij elke start van de computer).

Gevolgtrekking

In dit artikel hebben we geleerd hoe je Cron Jobs kunt toevoegen voor normale uitvoering in Linux. Correct gebruik van Cron Jobs is handig voor zelfs de meest vervelende handmatige taken waarmee de gebruiker wordt geconfronteerd, bijv. regelmatige verwijdering van oude logs, archivering van allerlei koude gegevens (gegevens die zelden worden geraadpleegd), enz.