Aloin treenaamaan crontabia ja meinasi into tyrehtyä heti alkuunsa, kun en meinannut saada notify-sendiä toimimaan. Sain sen lopulta lisäämällä suoritettavan komennon alkuun
XDG_RUNTIME_DIR=/run/user/$(id -u)
Jossain ohjeessa piti lisätä "DISPLAY=:0", mutta ei ollut siitä apua. Mitähän tuo oikein tekee? Outo hakemisto tuo /run/user.. sellainen kyllä on, tässä tapauksessa id-u oli 1000.
Koko crontab-rivi jota kokeilin on
* * * * * XDG_RUNTIME_DIR=/run/user/$(id -u) notify-send "`date \%H:\%M:\%S`" >/dev/null 2>&1
Ja tuo pompsauttaa minuutin välein kellonajan ilmoituksena.
XDG_RUNTIME_DIR=/run/user/$(id -u)
Jossain ohjeessa piti lisätä "DISPLAY=:0", mutta ei ollut siitä apua. Mitähän tuo oikein tekee? Outo hakemisto tuo /run/user.. sellainen kyllä on, tässä tapauksessa id-u oli 1000.
Koko crontab-rivi jota kokeilin on
* * * * * XDG_RUNTIME_DIR=/run/user/$(id -u) notify-send "`date \%H:\%M:\%S`" >/dev/null 2>&1
Ja tuo pompsauttaa minuutin välein kellonajan ilmoituksena.
Vastaukset 14
Vanhimmat
Vähän oudon näköinen tuo sinun stderr (standard error) virheen uudelleen ohjaus, toimiiko tuo todella noin. Ja miksi kenoviivat aika yksiköiden erottimena.
Niin tuo ympäristö muuttujan ( XDG_RUNTIME_DIR) asettaminen on tärkeää, ja se saattaa teetättää turhaa hapuilua. Eihän tuossa muuta ihmeellistä taida ollakaan.
Meneppä mäkee valheita levittämästä....
Crontabissa+on+prosenttimerkille+oma+tarkoituksensa+(uusi+rivi),+ja+siksi+pitää+käyttää+kenoviivaa+sen+edessä.+Ilman+kenoviivaa+komentorivi+katkeaa+%-merkin+kohdalla.+https://www.hcidata.info/crontab.htm
Uudelleenohjaus+">/dev/null+2>&1"+tarkittaa+ettei+tulosteta+mitään,+ei+edes+virheitä.+https://stackoverflow.com/questions/10508843/what-is-dev-null-21
Kyllä ne menee juuri kuten sanottu. Nuo linkit kaivoin vasta jälkikäteen pyydettäessä. Ilman takakenoviivoja ei toimi prosentit crontabin komentoriveissä. Tulostus puolestaan pitää ohjata bittitaivaaseen, koska tarkoitus ei ole lähettää crontabista mitään raportteja sähköpostitse.
Ihan hyvä että sinuakin kiinnostaa linuxien alkeet.
Ei tule susta koodaria!
Minähän jo olen, ja vielä sieltä parhaimmasta päästä.
Onhan tuossa koodissasi huomattavia virheitä.
Miksi olisi?
Tällaiseen kiusantekoon ei varmaan voi odottaa yläpidon reagoimista. Suomi24 vitsaus on nämä häiriköt jotka tuntevat jäävänsä ulkopuolelle, eikä siksi anna muidenkaan keskustella rauhassa.
Olikohan tuo "kysymys" laadittukin kiusantekomielessä. Tulipahan vastattua samoin kuin olisin tehnyt oikeasti apua pyytäneelle.
Tässä ketjussa kommentoineista ei varmaankaan ihan kaikki tiedä mikä on crontab. Menkää terminaaliin, vaikka näppäinyhdistelmällä "ctrl alt t".
Kirjoittakaan terminaaliin "crontab -e". Todennäköisesti käytätte ensimmäistä kertaa ja hyväksykää enter-näppäimellä editoriksi oletuksena tarjottu nano, eli vaihtoehto 1.
Menkää editorissa alimmalle riville ja lisätkää aloituksessa oleva viidellä *-merkillä alkava rivi, joka jatkuu todennäköisesti toisellekin riville (kopioikaa viestistä ja liitäkää nanossa esim. "shift insert"-näppäinyhdistelmällä), jonka jälkeen poistukaa editorista näppäilemällä "ctrl x", "y" ja viimeisenä enter.
Sen jälkeen pitäisi minuutin välein ilmestyä ilmoitus kellonajasta näytölle.
Kannattaa korjata virheet ensin, vaarallista suorittaa väärin kirjoitettuja komentoja.
Winhihhuli ei tiedä että Linuxissa uskaltaa tehdä tavallisena käyttäjänä ihan mitä vaan.
Eikä uskalla, tai ainakin se on tyhmää.
Jos terminaalissa teet paljon, niin voit haluta kokeilla byobu nimistä ohjelmaa. Siitä näkee kanssa kellon, vapaan levytilan yms. Ja sillä voi ajaa screeniä.