Cron er et effektivt og populært kommandolinjeverktøy som brukes til å planlegge et bredt spekter av oppgaver på et spesifikt tidspunkt uten brukerinteraksjon. De planlagte oppgavene er kjent som Cron Jobs mens Crontab er listen over filen som inneholder Cron -jobbene.
I denne artikkelen vil vi forklare med forskjellige eksempel på at du kan redigere og bruke CRONTAB -fil for å planlegge oppgaver i Debian 10 -systemet.
Cron kan brukes til å automatisere oppgaver i følgende scenarier:
Syntaks
Det er lettere å jobbe med Cron, når du først har forstått syntaks. Den generelle syntaksen for å bruke Cron er:
* * * */PATH/TO/Skript.sh
Hvert av feltene tilsvarer følgende:
Minutt (0-59) time (0-24) DAY_OF_THE_MONTH (1-7) Month_of_the_year (1-12)
DAY_OF_THE_WEEK (0-6) Kommando
Installere cron
Cron kommer forhåndsinstallert i Debian 10. Imidlertid, hvis det mangler i systemet ditt, kjører du følgende kommando for å installere det:
$ sudo apt install cron
Se crontab
For å se Crontab -filen, bruk følgende kommando:
$ crontab -l
For å se CRONTAB -fil for en bestemt bruker, bruk følgende kommando:
$ sudo crontab -u bruker -l
Rediger crontab
For å redigere crontab -filen til den nåværende brukeren:
$ crontab -e
For å redigere crontab -filen til en bestemt bruker:
$ sudo crontab -u bruker
Hvis du redigerer Crontab -filen for første gang, blir du bedt om å velge en redaktør:
Når du har valgt redaktøren, vises følgende vindu.
For eksempel vil du kjøre et backup -skript som heter “Backup.SH ”som ligger på Documents Directory daglig klokka 02.00. For å gjøre det, må du legge til følgende linje i Crontab -filen:
0 2 * * * /Dokumenter /sikkerhetskopi.sh
I vinduet ovenfor kan du legge til Cron -jobbene en etter en. Når du er ferdig, lagrer du og avslutter filen etter at alle Cron -jobbene automatisk kjøres med deres spesifiserte intervall.
Fjern crontab
For å fjerne crontab -filen, skriv inn følgende kommando i terminalen:
$ crontab -r
La oss nå gå gjennom en serie eksempler på Cron -jobber på en Linux -maskin.
Kjør en Cron -jobb hvert minutt
For å utføre en Cron -jobb hvert minutt, legg til følgende linje i Crontab -filen:
* * * * */bane/til/skript.sh
Kjør en Cron -jobb etter hvert 10. minutt
For å planlegge en Cron -jobb som skal utføres etter hvert 10. minutt, kan du legge til følgende linje i Crontab -filen.
*/10 * * * */sti/til/skript.sh
Kjør en Cron -jobb på bestemte måneder
Å planlegge en Cron -jobb å utføre på bestemte måneder E.g. Mars, august, desember, legg til Cron -jobben i Crontab -filen på følgende måte:
* * * Jan, mai, august */sti/til/skript.sh
Kjør en Cron -jobb på utvalgte dager
Hvis du ønsker at Cron -jobben din skal henrettes på utvalgte dager, la oss anta søndag og fredag klokka 17.00, skal det se ut som følgende.
0 17 * * Sol, fri/sti/til/manus.sh
Kjør en Cron -jobb daglig på et bestemt tidspunkt
For å planlegge en Cron -jobb som skal utføres daglig på et bestemt tidspunkt, la oss si klokka 03.00, legg til denne linjen i Crontab -filen.
0 3 * * */sti/til/skript.sh
Kjør en Cron -jobb på en bestemt dag
For å planlegge en Cron -jobb som skal utføres på en bestemt dag, la oss si hver søndag, legg til denne linjen i crontab -filen din.
0 0 * * Sol/sti/til/skript.sh
Jobben vil løpe klokka 00:00 hver søndag.
Kjør flere oppgaver i en enkelt Cron -jobb
For å planlegge flere oppgaver i en enkelt Cron -jobb, legg til alle skript i Crontab -filen din ved å skille dem med en semikolon.
* * * * */sti/til/script1.sh; /sti/til/script2.sh
Kjør en Cron -jobb på hver ukedag
For å planlegge en Cron -jobb som skal utføres på hver dag i uken som er fra mandag til fredag, må du legge til denne linjen i Crontab -filen.
0 0 * * 1-5/sti/til/skript.sh
Jobben vil løpe klokka 00:00 hver ukedag.
Kjør en Cron -jobb to ganger om dagen
Å planlegge en jobb for å løpe to ganger om dagen e.g. Klokka 06.00 og 15.00 må du legge til denne linjen i Crontab -filen:
0 6,15 * * */sti/til/skript.sh
Kjør en Cron -jobb hver time
For å planlegge en Cron -jobb for å utføre hver time til minutt 0, må du legge til denne linjen i Crontab -filen:
0 * * * */bane/til/skript.sh
For eksempel, hvis dagens tid er kl. 14.00, kjøres jobben kl. 15.00, 16:00 og så videre.
Kjør en Cron -jobb etter hver 3. time
For å planlegge en Cron -jobb som skal kjøres etter hver 3. time på minutt 0, må du legge til denne linjen i Crontab -filen:
0 */3 * * */sti/til/skript.sh
For eksempel, hvis dagens tid er kl. 14.00, kjøres jobben kl. 17.00, 20:00 og så videre.
Kjør Cron Job kl. 16.00 den første av hver måned
For å planlegge en jobb for å kjøre dagen først hver måned klokken 16.00, må du legge til denne linjen i CRONTAB -filen din:
0 16 1 * */sti/til/skript.sh
Strenger i crontab
Du kan også bruke følgende strenger i stedet for de lange repeterende kommandoene.
@time- løp cron jobb hver time jeg.e. “0 * * * *“
@midnatt- løp cron jobb hver dag jeg.e. “0 0 * * *“
@daglig- samme som midnatt
@Weekly- Run Cron Job hver uke, jeg.e. “0 0 * * 0”
@Månedlig- Run Cron Job hver måned jeg.e. “0 0 1 * *“
@årlig- kjør Cron Job hvert år jeg.e. “0 0 1 1 *“
@årlig- samme som @annuelt
@omstart- kjør Cron Job ved hver støvel
For eksempel, for å kjøre Cron -jobben hver dag i det første minutt og den første timen, legg til følgende linje:
@Daily/Path/To/Script.sh
For eksempel for å kjøre Cron -jobben hver gang serveren startes på nytt:
@Reboot/Path/To/Script.sh
Det er alt det er for det! I denne artikkelen har vi lært hvordan vi automatiserer forskjellige oppgaver som bruker Crontab i Debian -systemet. Ved å bruke eksemplene ovenfor, kan du planlegge enhver form for jobb for å starte uten brukerinteraksjon.