Hvordan planlegge en oppgave i Linux?

Hvordan planlegge en oppgave i Linux?
Når du bruker et UNIX-basert operativsystem, skal visse oppgaver utføres gjentatte ganger. Å kjøre dem manuelt hver eneste gang er tidkrevende og generelt ineffektiv. For å løse dette problemet, kommer UNIX med sine innebygde oppgaveplanleggere. Disse oppgaveplanleggerne fungerer som en smart vekkerklokke. Når alarmen går av, vil operativsystemet kjøre den forhåndsdefinerte oppgaven.

Når det gjelder Linux, kommer det med to grunnleggende, men kraftige verktøy: Cron Daemon (Standard Task Scheduler) og AT (mer egnet for engangsoppgaveplanlegging).

I denne guiden, sjekk ut hvordan du planlegger en oppgave i Linux.

Planlegg oppgaver i Linux

Cron
Cron Daemon er ansvarlig for å drive mange jobber til bestemte tidspunkter. Disse oppgavene kjøres vanligvis i bakgrunnen til planlagte tider. Det gir stor fleksibilitet uavhengig av oppgaven, uavhengig av intervallet (time, uke, måned, år eller hva som helst).

Cron holder rede på handlingene sine ved hjelp av crontab -filen. Crontab -filen er et skript som inneholder all nødvendig informasjon for å kjøre alle Cron -jobbene.

La oss se raskt på noe av den grunnleggende bruken av Cron. Når det. For demonstrasjonen har jeg tatt en eksempler på crontab -fil herfra.

For å liste opp alle de planlagte Cron -jobbene for den nåværende brukeren, kjør følgende kommando. Det skriver ut alt innholdet i crontab -filen.

$ crontab -l


Vil ha Cron -jobblisten for en annen bruker? Kjør denne kommandoen i stedet.

$ sudo crontab -u -l


For å redigere crontab -skriptet, kjør kommandoen. For å redigere crontab -filen for root, kjør følgende kommando med sudo -privilegium.

$ crontab -e


Hver linje i crontab -skriptet definerer en oppgave. Her er en rask oversikt over crontab -oppføringene.

$

Her er en liste over alle mulige verdier for alle disse feltene. Hvis det brukes en stjerne (*) i stedet for en numerisk verdi, vil alle mulige verdier av feltet bli brukt.

  • minutt: 0 til 59
  • Timer: 0 til 23
  • månedens dag: 1 til 31
  • Måned: 1 til 12
  • Ukens dag: 0 (søndag) til 6 (lørdag)

For en grundig guide for hvordan du bruker Crontab for å automatisere oppgaver, sjekk ut hvordan du konfigurerer Cron-jobber i Linux. Her er nok et raskt eksempel på en Cron -jobb som løper hvert minutt.


Mens CRON er den primære måten å planlegge oppgave, tilbyr på muligheten til å kjøre en kommando/skript på et bestemt tidspunkt eller med et fast intervall, må du merke deg at ved vil kjøre måljobben en gang, mens Cron vil kjøre jobben på nytt med intervallet. AT -verktøyet er mindre populært sammenlignet med Cron, men det er relativt lettere å bruke. Du kan bruke visse nøkkelord som midnatt eller teatime (4 s.M.).

Dette verktøyet kommer ikke forhåndsinstallert i de fleste Linux-distros. For å installere på, kjør den aktuelle kommandoen i henhold til din distro.

For Debian/Ubuntu og derivater.

$ Sudo apt installasjon -y på


For centos/rhel og derivater.

$ yum installer på

For Arch Linux og derivater.

$ sudo pacman -s på

For fedora og derivater.

$ sudo dnf installerer på

Etter at installasjonen er fullført, må du aktivere DAEMON.

$ sudo SystemCTL Enable -Now ATD.service


Veien på verk er litt annerledes. Når du ringer til, må du definere intervallet med å kjøre ønsket oppgave. For eksempel for å kjøre en viss kommando etter en time, bruk følgende kommando.

$ Nå + 1 time


For å kjøre ønsket oppgave på 6 s.M., Seks dager fra nå, kjør følgende kommando i stedet.

$ kl. 18.00 + 6 dager


Når du kjører kommandoen, vil du be om at kommandoen (e) skal kjøre. For å avslutte den på ledeteksten, trykk “CTRL + D.”På vil presentere et sammendrag av oppgavene planlagt og tiden de blir henrettet.

Dette er bare grunnleggende bruk. En mer konsistent måte å bruke AT kan være å utføre et bashskript som inneholder alle oppgavene som må utføres. Interessert i å lære mer om bashskripting? Kryss av

$ kl. 18.00 + 6 dager -ff


Kjør kommandoen for å liste opp alle de verserende på jobbene.

$ atq


Merk at utdataene vil liste opp alle jobbene med et spesifikt referansenummer i venstre kolonne. I tilfelle du vil slette en køjobb, bruk følgende kommando.

$ ATRM

Siste tanker

Å planlegge en oppgave, for Linux, er en veldig enkel jobb. Å lære det for første gang krever definitivt litt krefter. Når det først er lært, kan det imidlertid være utrolig nyttig. Når de er konfigurert, vil de planlagte oppgavene fortsette å løpe.

Glad databehandling!