Planlegging av oppgaver med Cron
Lær å bruke «cron» til å planlegge at skript og kommandoer kjøres automatisk med bestemte intervaller eller på bestemte tidspunkter.
Planlegging av oppgaver med Cron er en gratis leksjon i Mestring av Linux-kommandolinjen og Bash-skripting på CoddyKit. Dette er leksjon 1 av 4. Du kan lese hele leksjonen gratis nedenfor – og deretter øve praktisk i nettleseren med en innebygd kodeeditor og en AI-veileder som er tilgjengelig døgnet rundt. Den er en del av læringsløpet i Mestring av Linux-kommandolinjen og Bash-skripting, og fremdriften din synkroniseres mellom nettet og CoddyKit-appen. Kurset i Mestring av Linux-kommandolinjen og Bash-skripting inneholder totalt 4 leksjoner.
Automatiser oppgaver med Cron
Velkommen til automatiseringens verden! I denne leksjonen lærer De om cron, et kraftig verktøy i Linux som lar Dem planlegge kommandoer eller skript slik at de kjøres automatisk på bestemte tidspunkter.
Se for Dem at De kan sette opp daglige sikkerhetskopier eller systemkontroller hver time uten å løfte en finger – det er cron sin oppgave!
Deres personlige crontab-fil
Hver bruker på et Linux-system har sin egen crontab-fil (cron-tabell). Her lagrer De alle planlagte oppgaver.
For å redigere den personlige crontab-filen bruker De kommandoen crontab -e. Dette åpner filen i standardtekstredigeringsprogrammet, slik at De kan legge til nye jobber.
Crontab-oppføring: Tidsfelter
En crontab-oppføring består av seks deler. De fem første angir når kommandoen skal kjøres, og de skilles med mellomrom:
- Minutt:
0-59 - Time:
0-23(0 er midnatt) - Dag i måneden:
1-31 - Måned:
1-12(ellerJan-Dec) - Ukedag:
0-7(0 eller 7 er søndag, 1 er mandag)
Crontab-oppføring: Kommandoen
Den sjette og siste delen av en crontab-oppføring er kommandoen eller skriptet De vil kjøre.
Det er svært viktig å bruke absolutte stier til kommandoer og skript her (for eksempel /usr/bin/python i stedet for bare python). Cron-jobber kjører i et minimalt miljø, så den vanlige PATH-variabelen Deres er kanskje ikke tilgjengelig.
Spesialtegn i crontab
For å gjøre tidsplanene fleksible bruker cron spesialtegn:
*(asterisk): Samsvarer med alle mulige verdier (for eksempel hvert minutt eller hver time).,(komma): Skiller en liste med verdier (for eksempel1,15for minutt 1 og 15).-(bindestrek): Angir et verdiområde (for eksempel9-17for timene 9 til og med 17)./(skråstrek): Angir trinnverdier (for eksempel*/10for hvert tiende minutt).
Forhåndsdefinerte snarveier for tidsplaner
For vanlige planleggingsbehov tilbyr cron praktiske snarveier som erstatter de fem første tidsfeltene:
@reboot: Kjøres én gang etter omstart av systemet.@yearly(eller@annually): Kjøres én gang i året (0 0 1 1 *).@monthly: Kjøres én gang i måneden (0 0 1 * *).@weekly: Kjøres én gang i uken (0 0 * * 0).@daily(eller@midnight): Kjøres én gang om dagen (0 0 * * *).@hourly: Kjøres én gang i timen (0 * * * *).
Praktisk oppgave: Planlegg et enkelt skript
La oss lage et enkelt skript som logger en hilsen, og deretter planlegge at det skal kjøres hver dag kl. 10.00.
- Opprett skriptet (for eksempel
~/greet.sh): - Gjør det kjørbart:
chmod +x ~/greet.sh - Legg det til i crontab (
crontab -e):0 10 * * * /home/user/greet.sh
Denne oppføringen betyr: Kjør/home/user/greet.shved minutt 0, time 10 (kl. 10.00), hver dag i måneden, hver måned og hver ukedag.
#!/bin/bash
# This script logs a greeting to a temporary file.
echo "Hello from Cron! The time is $(date)" >> /tmp/cron_greeting.logAdministrere cron-jobbene Deres
Når De har lagt til cron-jobber, må De administrere dem:
- For å vise de gjeldende crontab-oppføringene:
crontab -l - For å fjerne alle crontab-oppføringene (vær svært forsiktig, siden handlingen ikke kan angres!):
crontab -r
Se alltid gjennom crontab-filen med crontab -l etter at De har gjort endringer, slik at De kan kontrollere at oppføringene er riktige.
Cron sine miljøvariabler
Husk at cron-jobber kjører i et minimalt miljø. Det betyr at de ofte ikke har de samme miljøvariablene (som PATH) som det interaktive skallet Deres.
Hvis skriptet avhenger av bestemte kommandoer, bør De bruke deres absolutte stier eller definere nødvendige miljøvariabler direkte øverst i crontab-filen, for eksempel PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin.
Utfordring: Crontab-syntaks
De må planlegge at et skript med navnet /home/user/daily_report.sh skal kjøres kl. 09.15 hver ukedag (mandag til fredag). Hvilken crontab-oppføring er riktig?
Oppsummering: Mestret cron-planlegging
Godt jobbet! De har nå mestret det grunnleggende ved cron for planlegging av oppgaver.
- De har lært om
crontab-filen og hvordan den redigeres medcrontab -e. - De forstår de seks feltene i en cron-oppføring, inkludert tidsfeltene og kommandoen.
- De har utforsket spesialtegn og forhåndsdefinerte snarveier for fleksibel planlegging.
- De vet hvordan De administrerer jobbene Deres med
crontab -logcrontab -r. - De har også lært om betydningen av absolutte stier og miljøvariabler i cron-sammenheng.
Gå nå videre og automatiser!
Lær deg Bash med en AI-veileder – gratis
Skriv og kjør ekte kode i nettleseren, få umiddelbar hjelp fra en AI-veileder som er tilgjengelig døgnet rundt, og fortsett der du slapp – på nettet eller i appen.
- Kurs
- 22
- Leksjoner
- 88
Ofte stilte spørsmål
Er leksjonen «Planlegging av oppgaver med Cron» gratis?
Ja – hele teksten i «Planlegging av oppgaver med Cron» er gratis å lese her på nettet. For å øve interaktivt med en innebygd kodeeditor og en AI-veileder som er tilgjengelig døgnet rundt, og for å låse opp resten av Mestring av Linux-kommandolinjen og Bash-skripting-kurset, kan du oppgradere til CoddyKit PRO. Kurset i Mestring av Linux-kommandolinjen og Bash-skripting inneholder totalt 4 leksjoner.
Hva lærer jeg i «Planlegging av oppgaver med Cron»?
Lær å bruke «cron» til å planlegge at skript og kommandoer kjøres automatisk med bestemte intervaller eller på bestemte tidspunkter. Du øver på Mestring av Linux-kommandolinjen og Bash-skripting med praktisk kode som du kjører direkte i nettleseren, mens en AI-veileder som er tilgjengelig døgnet rundt, svarer på spørsmålene dine mens du jobber deg gjennom leksjonen.
Trenger jeg erfaring for å begynne med Mestring av Linux-kommandolinjen og Bash-skripting?
Ingen tidligere erfaring er nødvendig. Mestring av Linux-kommandolinjen og Bash-skripting på CoddyKit er lagt opp for både nybegynnere og viderekomne, så De kan begynne her eller helt fra start og lære i Deres eget tempo. Dette er leksjon 1 av 4.
Hvor lang tid tar leksjonen «Planlegging av oppgaver med Cron»?
De fleste CoddyKit-leksjoner tar omtrent 5–10 minutter. Hver leksjon er kort og interaktiv, slik at De gjør jevne fremskritt og kan fortsette akkurat der De slapp – både på nettet og i appen.
Kan jeg skrive og kjøre kode i denne Mestring av Linux-kommandolinjen og Bash-skripting-leksjonen?
Ja. Alle Mestring av Linux-kommandolinjen og Bash-skripting-leksjoner har en innebygd kodeeditor, slik at De kan skrive og kjøre ekte kode direkte i nettleseren og få umiddelbar tilbakemelding fra AI – uten lokal konfigurering.
Alle leksjonene i dette kurset
- Planlegging av oppgaver med Cron
- Automatisering av systemadministrasjon
- Avansert skriptingsprosjekt
- Automatisk loggrotering og opprydding