Cron är en demon som kör schemalagda kommandon för Linux. Du kan använda Cron för att schemalägga och automatisera jobb i Linux, vilket gör att du inte behöver göra dem manuellt.

Obs! Cron är tillgängligt i de flesta * NIX-system, inklusive Mac OS X. I den här artikeln kommer vi att diskutera från Linux-perspektivet.

Hur jobbar cron?

Enkeltvis skannar cron din dator för textfiler och kör kommandon inuti dem med jämna mellanrum. Cron utför inte bara några textfiler, bara de som finns i en viss plats på hårddisken. Dessa textfiler kallas "crontabs".

En crontab är en textfil med en lista med kommandon som automatiskt kommer att köras vid specifika tider. Dessa kommandon kallas cron-jobb. Cron-demonen exekverar cron-jobben inom crontaben och hanterar schemaläggningen, allt i bakgrunden.

Det finns en root crontab för uppgifter som kräver administrativa privilegier. Varje användare har också en egen crontab-fil, så att de var och en kan driva sin egen personliga uppsättning uppgifter, och dessa uppgifter kommer att köras oberoende av om användaren är inloggad eller inte.

Cron söker i området som ligger på / var / spool / cron / . Denna plats är där crontabs lagras. Om jag öppnar den här filen med en allmän textredigerare så visas det här.

Notera varningen om du inte vill redigera den här filen manuellt. Du kan redigera den direkt i terminalen, men det finns också specifika applikationer för redigering av crontabs. GNOME-användare kan vara intresserade av att kolla in Gnome Schedule. KDE-användare kan kolla in KDE-uppgiftsschemaläggaren.

Visa en crontab

Om du vill se dina crontabs manuellt, här är några grundläggande kommandon.

För att visa en crontab:

 crontab-l 

Att ta bort en crontab:

 crontab-r 

Att redigera en crontab:

 crontab -e 

När du redigerar en crontab inom en terminal för första gången kommer cron att be dig välja en redigerare. Det pekar på vilken redaktör det anser vara det enklaste, vilket förmodligen är nano. För att ändra detta i framtiden skriver du:

 select-editor 

Det öppnar sedan en tom crontab från mallkatalogen. Allt som sparas i den här filen kommer att utföras som användaren.

Läser ett cron jobb

Ett cronjobb kan delas upp enligt följande:

Minut: 0 - 59
Timme: 0 - 23 (0 = midnatt)
Dag: 1 - 31
Månad: 1 - 12
Veckodag: 0 - 6 (0 = söndag)
Kommando: Kommando att utföra

A * innebär att exekveras vid varje intervall.

Ta en titt på det här kommandot:

 04 07 * * 6 /usr/bin/sbin/backup.sh 

I ovanstående exempel kör jag /usr/bin/sbin/backup.sh varje lördag klockan 07:04 oavsett månad eller datum.

Bilden nedan ger ett exempel på cron-jobb och en titt på lämplig syntax:

Slutgiltiga tankar

Även om du aldrig har öppnat en crontab tidigare har din dator troligen cron-jobb som redan fungerar i bakgrunden. Cron gör det enkelt för en distribution att leta efter uppdateringar med regelbundet schemalagda intervaller eller veta när säkerhetskopieras. Oavsett vilken applikation du använder för att skapa och redigera framtida cron-jobb, förblir syntaxen inuti en crontab densamma.

Med dessa verktyg till ditt förfogande kan du automatisera uppgifter med cron och kan ställa in din musik för att börja spela vid specifika tider på dagen, uppdatera din e-post innan du sätter dig ner på din dator varje morgon, berätta att datorn stängs av vid en specifik tid varje natt, eller nästan alla andra enskilda uppdrag du är van att göra för hand.