Haluan suorittaa pienen seurantatiedostotunnin joka toinen tunti ubuntu-koneessani.

java -jar mymonitoringtool.jar 

En tiedä miten se asetetaan.

Kommentit

  • cron on ystäväsi.
  • Mitä tapahtuu, kun siirrytään kesäaikaan? Vai onko erittäin tärkeää, että työ suoritetaan kahden tunnin välein eikä sen saa ohittaa tai lisätä tunti sitten?
  • kyllä, sen pitäisi olla käynnissä joka toinen tunti. Ei ohitusta, luulisin, koska se ei olisi tehokasta, se merkitsisi 2 tunnin seurantaa alle 2 tunnin ajan. Aiomme tehdä siitä joitain tilastoja. Joten kesto on tärkeää.

vastaus

Voit määrittää tarpeidesi mukaan seuraavan lausekkeen sisältävän välilehden.

0 */2 * * * path/to/java -jar path/to/mymonitoringtool.jar &> path/to/monitor-$(date "+%Y%b%d-%H%M%S").log 

Tarkista ensin olemassa olevat cron-työt suorittamalla crontab -l.

Jos et ”t sinulla on vielä cron-töitä, voit laittaa a bove rivi tekstitiedostossa (sano my-cron-job.txt) ja aktivoi se suorittamalla crontab my-cron-job.txt. Tämän jälkeen voit tarkistaa, että työ on lisätty suorittamalla uudelleen crontab -l.

Jos sinulla on jo cron-töitä, sinun on suoritettava crontab -e ja muokkaa crontab-tiedostoa. Tämä edellyttää, että työskentelet komentorivieditorin kanssa (vi oletusarvoisesti).

Cron-demoni asettaa vain rajoitetun määrän ympäristömuuttujista, joten on parempi määrittää täysi polku java-suoritettavaan tiedostoon. Sinun on myös määritettävä suoritettavan JAR-tiedoston täydellinen polku.

Oletan, että haluat kerätä lähdön komennosta java -jar, joten Olen lisännyt komentoon lokitiedoston. Komennon lähtö- ja virtavirrat ohjataan tähän lokitiedostoon, joka nimetään aikaleimalla (esimerkiksi monitor-2018Nov03-200000.log).

Kun kaikki on asetettu, sinun tulee seurata cron-työtä ensimmäisten tai kahden suorituksen osalta. Jos kaikki toimii kuten tarvitset, voit jättää sen toimimaan.


Ulkoisena viitteenä , tässä johdanto cron-työpaikoista. Tämän pitäisi auttaa sinua ymmärtämään, miten ajoitus todella toimii.

https://www.howtoforge.com/a-short-introduction-to-cron-jobs

Vastaus

cron on Linuxin sisäinen työn ajastin. Se auttaa ajastamaan komennon suorittamaan tietyllä aikavälillä tai päivämäärän kellonaikalla.

type crontab -e päätelaitteessa

lisää tämä rivi 0 */2 * * * path/to/java -jar path/to/mymonitoringtool.jar

tallenna ja poistu

Crontabin syntaksi seuraavasti

00 */2 * * * path/to/java -jar path/to/mymonitoringtool.jar 

0. minuutin joka toinen tunti joka päivä joka kuukausi joka arkipäivä run-this-command

Lisää vaihtoehtoja ja tietoja: https://help.ubuntu.com/community/CronHowto

Kommentit

  • Tarvitaanko polku / to / java, jos minulla on asennusohjelma JAVA_HOME? Näen koneessani java-version toiminnot.
  • ei tarvitse lisää polku, jos ympäristömuuttuja (JAVA_HOME) on asetettu. Mutta jotenkin, jos ympäristömuuttuja sekoittuu, lisätty Java-polku cronjobissa voitti ' t jarruttaa

Vastaa

Sähköpostiosoitettasi ei julkaista. Pakolliset kentät on merkitty *