Hur man skapar och lägger till Cron-jobb i Linux

Schemalägga periodiska uppgifter med Cron i Linux

cron är ett Linux-program som används för att schemalägga ett kommando eller ett skript som ska köras vid en senare tidpunkt. Den kan också användas för att schemalägga regelbundet körande kommandon och skript. Program som schemalagts med cron kallas vanligtvis Cron jobb. Dess huvudsakliga användning är för systemadministrationsuppgifter som regelbundna säkerhetskopieringar, regelbundna programuppdateringar och andra liknande underhållsuppgifter.

Introduktion

cron körs som en demon i Linux, dvs som en bakgrundsprocess. Det tillåter användare att schemalägga jobb direkt med crontab-kommandot, som öppnar en konfigurationsfil som heter Cron File i en redigerare. Separata Cron-filer skapas för varje användare.

Skapa en Cron-fil och grundläggande syntax

De crontab kommando kan utföras med -e flagga för att redigera en befintlig Cron-fil. Om filen inte redan finns skapas den. Om användaren anropar kommandot för första gången och om det finns flera filredigerare installerade på Linux-systemet, kommer kommandot att be användaren att välja en standardredigerare från en lista med redigerare.

Efter att ha valt redigeraren kommer en cron-fil för användaren att skapas och öppnas. Du kan nu ange jobb i filen.

Den allmänna syntaxen för att specificera ett Cron-jobb är:

I grund och botten kommer att köras på den angivna 'minut' (0-59), 'timme' (0-23), 'dag i månaden' (1-31), månad (1-12), veckodag, (0-7, För söndag kan antingen 0 eller 7 användas) i Cron Job. För att förenkla, låt oss ta ett exempel:

1 2 3 4 5 eko "Hej"

Detta betyder kommandot eka "Hej" kommer att köras var femte dag i veckan (fredag) och var tredje dag i månaden, var fjärde månad på året (april), vid tidpunkten 02:01 (andra timmen första minuten).

Om samma kommando ska köras varje dag klockan 02:01 kommer syntaxen att se ut så här:

1 2 * * * eko "Hej"

De * betyder "alltid" eller "för alla", t.ex. för alla månader, för alla dagar i veckan osv.

Kommandooperatören (,) kan användas för att ange en lista med värden när uppgiften ska upprepas. Till exempel:

0 2,3,4 * * * eko "Hej"

Detta kommer att köra programmet kl. 02.00, 03.00 och 04.00, varje dag.

Liknande, ett bindestreck (-) operatör kan användas för att specificera ett intervall för vilket uppgiften ska upprepas. Till exempel:

0-20 2 * * * eko "Hej"

Detta kommer att köra programmet kl. 02:00, 02:01, 02:02 och så vidare upp till 02:20.

Äntligen har vi snedstrecket ( / ) operatör. Denna operator används för att ange ett intervallvärde enligt vilket uppgiften ska upprepas. T.ex. */15 i minutfältet betyder att uppgiften ska upprepas var 15:e minut. 2-10/2 i fältet timmar anger att uppgiften ska upprepas mellan 02:00 och 10:00 efter varje 2-timmarsintervall (02:00, 04:00, 06:00, 8:00, 10:00).

*/15 2-10/2 * * * eko "Hej"

När du har gjort inmatningen i Cron-filen, spara filen och avsluta redigeraren.

Du borde se en "installerar ny crontab" meddelande i terminalen efter att ha sparat och avslutat crontab-filen.

Makron

Vissa makron är fördefinierade i Cron som anger några vanliga tidsintervall, som varje timme, varje dag, varje månad, etc.

För att köra en uppgift en gång varje dag vid början av dagen, d.v.s. klockan 00:00, använd makro @dagligen. Detta motsvarar 0 0 * * *.

Du kan lägga detta i Cron-filen på samma sätt som beskrivits tidigare.

På liknande sätt kan de andra makron användas, dvs. @varje timme (minut 0 av varje timme), @en gång i månaden (00:00 den första dagen i månaden), @varje vecka (00:00 den första dagen i veckan, @årlig(00:00 den första januari varje år), @starta om (vid varje start av datorn).

Slutsats

I den här artikeln lärde vi oss hur man lägger till Cron Jobs för regelbunden körning i Linux. Korrekt användning av Cron Jobs är praktiskt även för de mest besvärliga manuella uppgifter som användaren möter, t.ex. regelbunden radering av gamla loggar, arkivering av alla typer av kalla data (data som sällan nås) etc.