crontab

Kuidas planeerida ülesanne Linuxis?

Kuidas planeerida ülesanne Linuxis?
Kui kasutate UNIX-põhist operatsioonisüsteemi, tuleb teatud ülesandeid täita korduvalt. Nende käsitsi käivitamine iga kord on aeganõudev ja üldiselt ebaefektiivne. Selle probleemi lahendamiseks on UNIXil sisseehitatud ülesannete ajastajad. Need ülesannete ajastajad toimivad nagu nutikas äratuskell. Äratuse käivitamisel käivitab operatsioonisüsteem etteantud ülesande.

Linuxi puhul on see varustatud kahe põhilise, kuid võimsa tööriistaga: Croni deemon (vaikimisi ülesannete ajastaja) ja at (sobib rohkem ühekordseks ülesannete ajastamiseks).

Selles juhendis vaadake, kuidas Linuxis ülesannet ajastada.

Ajakava ülesanded Linuxis

Cron
Croni deemon vastutab paljude töökohtade juhtimise eest kindlatel kellaaegadel. Need ülesanded käivitatakse tavaliselt kavandatud kellaaegadel taustal. See pakub suurt paindlikkust olenemata ülesandest, olenemata intervallist (tund, nädal, kuu, aasta või mis iganes).

Cron jälgib oma tegevusi crontabi faili abil. Crontabi fail on skript, mis sisaldab kogu vajalikku teavet kõigi croni tööde käivitamiseks.

Vaatame kiiresti croni põhikasutust. Mis tahes järgmise käsu korral konfigureeritakse see juurkasutaja jaoks, kui seda käivitatakse sudo privileegiga. Meeleavalduse jaoks olen siit haaranud crontabi faili näidise.

Kõigi praeguse kasutaja ajastatud croni tööde loendamiseks käivitage järgmine käsk. See prindib kogu crontab-faili sisu.

$ crontab -l


Tahad croni tööde loendit teisele kasutajale? Selle asemel käivitage see käsk.

$ sudo crontab -u -l


Crontabi skripti muutmiseks käivitage käsk. Crontabi faili redigeerimiseks root jaoks käivitage järgmine käsk sudo privileegiga.

$ crontab -e


Crontab-skripti iga rida määratleb ülesande. Siin on crontab-kirjete kiire jaotus.

$

Siin on kõigi nende väljade kõigi võimalike väärtuste loend. Numbrilise väärtuse asemel tärn (*) kasutamisel kasutatakse välja võimalikke väärtusi.

  • minut: 0 kuni 59
  • tundi: 0 kuni 23
  • kuu päev: 1 kuni 31
  • kuu: 1 kuni 12
  • nädalapäev: 0 (pühapäev) kuni 6 (laupäev)

Põhjaliku juhendi saamiseks crontabi kasutamise kohta ülesannete automatiseerimiseks vaadake, kuidas seadistada croni töid Linuxis. Siin on veel üks kiire näide cron-tööst, mis töötab iga minut.

kell
Kuigi cron on peamine ülesannete ajastamise viis, pakub see võimalust käsku / skripti käivitada kindlal kellaajal või kindla intervalliga, kuid pidage meeles, et at käivitab sihtmärgi töö üks kord, samal ajal kui cron käivitaks töö uuesti intervalliga. At-tööriist on croniga võrreldes vähem populaarne, kuid seda on suhteliselt lihtsam kasutada. Võite kasutada teatud märksõnu, näiteks kesköö või teatri aeg (4 lk.M.).

See tööriist ei ole enamikus Linuxi distros eelinstallitud. Aadressil installimiseks käivitage vastav käsk vastavalt teie levitamisele.

Debiani / Ubuntu ja derivaatide jaoks.

$ Sudo apt install -y aadressil


CentOS / RHEL ja derivaadid.

$ yum installige aadressil

Arch Linuxi ja derivaatide jaoks.

$ sudo Pacman -S kl

Fedora ja derivaatide jaoks.

$ sudo dnf install

Pärast installimise lõppu lubage deemon.

$ sudo systemctl võimaldab - nüüd atd.teenus


Töö viis on natuke erinev. Alati helistades peate määrama soovitud ülesande käitamise intervalli. Näiteks teatud käsu käivitamiseks tunni pärast kasutage järgmist käsku.

$ praegu + 1 tund


Soovitud ülesande käivitamiseks kiirusel 6 P.M., kuue päeva pärast käivitage selle asemel järgmine käsk.

$ kell 18 + 6 päeva


Kui käivitate käsu, palub at käsu (de) käivitamist. Viibast väljumiseks vajutage klahvikombinatsiooni „Ctrl + d.”Praegu esitatakse kokkuvõte kavandatud ülesannetest ja nende täitmise ajast.

See on lihtsalt põhikasutus. Järjepidevam viis at-i kasutamiseks võib olla kõigi täidetavaid ülesandeid sisaldava bashi skripti käivitamine. Kas olete huvitatud bash-skriptimise kohta lisateabe saamisest? Kontrollima

$ kell 18 + 6 päeva -ff