crontab

Vykdykite „Cron“ darbą kiekvieną minutę

Vykdykite „Cron“ darbą kiekvieną minutę
Jei norite paleisti programą ar scenarijų fone „Linux“, tada „cron“ darbas yra labai svarbus. Naudodamiesi „cron“ užduotimis, fone po nurodyto laiko intervalo galite vykdyti programą ar scenarijų.

Pažvelkime į keletą „Cron“ darbų realaus gyvenimo pavyzdžių.

„Linux“ sistemoje yra daugybė kitų „cron“ darbų.

Šiame straipsnyje aš jums parodysiu, kaip kiekvieną minutę atlikti „cron“ darbus „Linux“ sistemoje. Demonstracijai naudosiu „Debian 9 Stretch“. Bet galite naudoti bet kurį pasirinktą šiuolaikinį „Linux“ paskirstymą. Pradėkime.

„Crontab“ pagrindai:

„Linux“ sistemoje jūs neturite būti šaknis tam, kad galėtų atlikti „cron“ darbus. „Cron“ užduotis galite paleisti kaip bet kuris vartotojas. Kiekvienas „Linux“ vartotojas gali naudoti a crontab failą paleisti savo „cron“ darbų rinkinį.

Pagal numatytuosius nustatymus vartotojas neturi crontab failą „Linux“. Galite sukurti crontab failą su šia komanda:

$ crontab -e

Jei šią komandą vykdote pirmą kartą, turėtumėte paprašyti sąraše pasirinkti teksto redaktorių. Aš išsirinksiu nano, numatytasis. Galite išsirinkti patinkantį. Baigę paspauskite .

The crontab failą reikia sukurti (jei jo dar nėra) ir atidaryti su jūsų mėgstamu teksto redaktoriumi.  Dabar šio failo pabaigoje galite pridėti savo „cron“ užduotis ir, kai būsite patenkinti, tiesiog išsaugokite jį ir išeikite iš teksto rengyklės.

Komandos vykdymo kiekvieną minutę sintaksė:

Sintaksė crontab failas yra toks:

minutė valanda dayOfMonth mėnuo dayOfWeek commandToRun

Čia,

Norėdami paleisti a commandToRun komandą kiekvieną minutę, turėtumėte ją įrašyti į crontab failą taip:

* * * * * commandToRun

„Crob“ darbo atlikimas kiekvieną minutę:

Dabar, kai žinome teorijas, pridėkime paprastą scenarijų laikmatis.sh į crontab failą ir sužinokite, kaip jį tvarkyti.

Viduje konors laikmatis.sh scenarijų, turiu tik šias kodų eilutes. Viskas, ką jis daro, yra sukurti naują failą / home / shovon / bin / timer.žurnalas (jei dar neegzistuoja) ir prie jo prideda datos komandos išvestį.

Dabar pridėkime scenarijų prie mūsų crontab ir leiskite jam veikti kiekvieną minutę šia eilute:

* * * * * / home / shovon / bin / timer.sh

Kai išsaugosite crontab failą ir išeikite iš naujo teksto rengyklės crontab failas turėtų būti įdiegtas.

Praėjus minutei, nauja byla yra laikmatis.žurnalas yra sukurtas norimame kataloge, kaip matote pažymėtoje ekrano kopijos dalyje žemiau.

Nuo laikmatis.žurnalas žurnalo failą, akivaizdu, kad scenarijus laikmatis.sh veikia kiekvieną minutę.

Klaidų gavimas iš „Cron“ darbų:

Norėdami sužinoti klaidas iš „Cron“ darbo, galite nusiųsti klaidas į klaida.žurnalas failą ir įprastus išėjimus į prieiga.žurnalas failą, pavyzdžiui. Žinoma, failus galite pavadinti bet kuo.

Norėdami tai parodyti, pakeičiau scenarijų laikmatis.sh truputi. Dabar klaidos siunčiamos klaida.žurnalas failą / home / shovon / bin katalogas ir išėjimai siunčiami prieiga.žurnalas viduje konors / home / shovon / bin kataloge.

Iš pradžių / tmp / i_must_be_here failo nėra, todėl gaunu klaidą klaida.žurnalas failą, kaip matote.

The prieiga.žurnalas byla šiuo metu tuščia.

Dabar aš ketinu sukurti failą / tmp / i_must_be_here

Kaip matote, išvestis yra prieiga.žurnalas failą dabar.

Jei norite, galite nukreipti išvestį ir klaidas tame pačiame faile taip:

Kaip matote, STDIN ir STDERR išėjimai siunčiami į išėjo.žurnalas failą.

Įsitikinkite, kad paskutinis darbas baigtas, kol vėl pradėsite:

Kad tai veiktų, galite sukurti laikiną failą iškart pradėjus darbą ir jį pašalinti prieš pat baigiant. Tada prieš pradėdami darbą galite patikrinti, ar yra laikinasis failas. Jei taip, galite išeiti iš užduoties ir paleisti užduotį tik tada, kai laikinasis failas nepasiekiamas.

Šis paprastas scenarijus taip ir daro.

Kaip matote, laikmatis.pid failas yra sukurtas.

Skaitant prieiga.žurnalas failas įrodo, kad „cron“ užduotis nevykdoma anksčiau, nei baigiasi ankstesnė „cron“ užduotis. Kaip matote, jis važiavo 01:32:01, o kitą kartą turėjo bėgti 01:33:01, bet taip nebuvo. Vietoj to, jis praėjo 01:35:01, maždaug po 3 minučių.

„Cron“ darbo rezultatų organizavimas, kad būtų lengviau derinti:

Galite gražiai suformatuoti išvestis, kad jūsų „cron“ darbą būtų lengviau derinti.

Pavyzdys, kaip tai galima padaryti, pateiktas šiame scenarijuje.

Kaip matote, rezultatai, klaidos ir sėkmės pranešimai yra gerai atspausdinti žurnalo faile.

Galite padaryti nuostabių dalykų naudodami „Cron“ darbus ir „shell“ scenarijus. Čia pademonstravau keletą idėjų. Bet dangus yra tavo riba. Drąsiai eksperimentuokite su bet kokiomis turimomis idėjomis. Dėkojame, kad perskaitėte šį straipsnį.

Atvirojo kodo komercinių žaidimų variklių uostai
Nemokami atvirojo kodo ir įvairių platformų žaidimų varikliai gali būti naudojami žaidžiant senus ir kai kuriuos gana naujus žaidimų pavadinimus. Šiam...
Geriausi „Linux“ komandinės eilutės žaidimai
Komandų eilutė yra ne tik jūsų didžiausias sąjungininkas naudojant „Linux“, bet ir pramogų šaltinis, nes ją galite naudoti norėdami žaisti daug įdomių...
Geriausios „Linux“ skirtos „Gamepad“ žemėlapių sudarymo programos
Jei jums patinka žaisti žaidimus „Linux“ su žaidimų pultu, o ne įprasta klaviatūra ir pelės įvesties sistema, yra keletas jums naudingų programų. Daug...