ohjelma if-then lauseessa

Anonyymi

Mitään ideaa miten oheinen saadaan toimimaan vai toimiiko lainkaan

if [ `cat /sys/class/gpio/gpio18/value` ]; then

eli ohjelman palaute if-then lauseessa. Saako sitä mitenkään toimimaan?

13

234

    Vastaukset

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000
    • Anonyymi

      Voit tarkastella, mitä ihmettä komento 'cat /sys/class/gpio/gpio18/value' ylipäätään palauttaa. Linux-jakelussani ei moisia tiedostoja ole.
      Kannattaa opetella shell-ohjelmointia tai sopivia ohjelmointikieliä.

      • Anonyymi

        Se palauttaa joko 0 tai 1 riippuen siitä onko kytkintä painettu vai ei. Debian ja raspberry pi 3.

        T: Alkuperäinen kyselijä.


    • Anonyymi

      SAA, ja huomaa tuo "value" nimen tulisi kuulua tiedostolle, ei kansiolle kuten se tässä kysymyksessäsi vaikuttaa olevan.

      if /bin/cat /sys/class/gpio/gpio18/value
      then
      echo "Tiedosto löytyi ja tulostettiin"
      else
      echo "Tiedosto ei löydetty"
      fi

      • Anonyymi

        Tuo palautta truen jos tiedosto on olemassa. Ihan sitä en hae vaan tiedoston sisällön mukaan true tai false. Ja kyllä tuo /sys/class/gpio/gpio18/value on ihan tiedosto. Raspberry pi 3:ssa.


    • Anonyymi

      Jos haluat testata onko tiedosto olemassa, ennen kuin annat cat -tulostuskomennon sille, voit toteuttaa sen myös näinkin:

      if test -e /sys/class/gpio/gpio18/value
      then
      /bin/cat /sys/class/gpio/gpio18/value
      else
      echo "Tiedostoa ei ole"
      fi

    • Anonyymi

      Tein miellyttävän havainnon kun otin ketjusta PDF kopion. Yhdennäköisyys on jonkin verran korjaantunut, mutta on vielä kaukana siitä mitä se vanhassa S24 sivustossa oli.

      • Anonyymi

        Ja paskat, jo tuo edellisen viestin lisääminen sotki tulosteen piloille. Hetken kerkisin kuvitella että jotain tämänkin virheen korjaamiseksi on tehty.


    • Anonyymi

      2> on keino siirtää virheiden tulostus näkymättömiin.
      $? taas kertoo miten edellinen komento onnistui. 0 jos se onnistui.

      eli tälleen se vois toimia:
      https://pastebin.com/3bSLsCpv

      toinen keino sit tietty tarkistaa tiedoston olemassaolo ja jos se on, sitten lukea se.

      • Anonyymi

        Aivan hyvä variaatio tehtävästä.


    • Anonyymi

      No tässä vielä variaatio siitä tapauksesta että pitää lukea tiedoston sisällöstä tuo TRUE arvo. Tämä esimerkki lukee tiedoston viimeisen rivin, vaikka niitä olisi kuinka paljon, muita ei huomioida. Lisäksi arvo TRUE luetaan vaikka kuinka pitkän rivin sisällöstä, kunhan se vain löytyy riviltä, ja ellei löydy, tulostetaan että: "Viimeinen rivi sisälsi jotain muuta!"

      Lisäksi vielä heti alussa testataan että tämä (value) tiedosto on olemassa, mikäli ei ole, siitä ilmoitetaan: "Tiedostoa (value) ei löytynyt!".

      Koska Linux Bash Shell ei ole sisennyksistä tarkka, kuten Python on, en viitsinyt tallentaa tuota Pastebin.com sivulle. Jos moderaattori poistaa niin tehdään se sitten mikäli tarvitaan.

      if test -e /sys/class/gpio/gpio18/value;
      then
      s=`sed -n -e '$p' /sys/class/gpio/gpio18/value`
      if [[ $s == *"TRUE"* ]]; then
      echo "Viimeinen rivi sisälsi TRUE arvon!"
      else
      echo "Viimeinen rivi sisälsi jotain muuta!"
      fi
      else
      echo "Tiedostoa (value) ei löytynyt!"
      fi

    • Anonyymi

      Nosto, meinaa painua alle.

    • Anonyymi

      Aloittaja tässä terve. Alla oleva rivi toimi kuten halusin

      if [ `cat /sys/class/gpio/gpio18/value` = 1 ]; then

      Ja sitten puppulausegeneraattorin tuotosta pitääkseni tekoälyttömyysmoden tyytyväisenä:

      Vaihtelevalla menestyksellä myös informaatioteknologia noudattaa epäilemättä ideatasolla reaktiota tämänhetkisen tilanteen suhteen. Jos vertailemme lyhyesti asiaankuuluvia ilmiöitä, huomaamme, että vallankumouksellinen kolmannen sukupolven matkapuhelimien ja varsinkin e-business -sektorille suunnattujen laitteiden kirjo antaa mahdollisuuden parantaa yleispätevien toimintaohjeiden tavanomaisia käyttökohteita. Yksilötasolla luulisi olevan selvää, että asynkroninen asiakaskokemus näyttää todeksi runsain määrin esiintyvää suurpiirteisyyttä sekä rauhattomuutta.

      Tämän ollessa täyttä totta nykyään, kuka omaa vastuun tehdä oikeat johtopäätökset?

      Lienee sanomattakin selvää, että kätevä langaton teknologia yhdistettynä esimerkiksi kiinteään tilaajapalveluun todistaa oikeaksi erilaisissa laitoksissa tapahtuvaa valmistusta. Keskeiset ideologiset periaatteet osoittavat, että useiden maanlaajuisia palveluita tarjoavien alan suuryritysten lanseeraama mobiili-internet -teknologia yksinkertaistaa hyvinvoivan yhteiskunnan rinnalle muodostuneita epäkohtia. Tilastot osoittavat, että asynkroninen asiakaskokemus asettaa tahomme tukalaan tilanteeseen ajateltaessa vastuuntuntoisten yhteistyökumppaneiden aatteellisia intressejä. Tapahtumat viime aikoina osoittavat, että verkottuva länsimaailma noudattaa epäilemättä ideatasolla organisaatiossa toimivien vastuunalaista asennetta.

      • Anonyymi

        Tämä oli HYVÄ ja opettavainen kysymys.


    Ketjusta on poistettu 0 sääntöjenvastaista viestiä.

    Luetuimmat keskustelut

    1. Nuorille miehille ei kelpaa enää paljon käytetty nainen

      "En ikinä huolisi mitään kyläpyörää", Tomi täräyttää TikTokissa https://www.iltalehti.fi/kotimaa/a/27182b8f-7759-49d0-8
      Sinkut
      337
      3338
    2. Persut eivät ole kertoneet euronkaan edestä säästökohteita

      Mutta änkyttävät kysellä niistä muilta jatkuvasti. Vaikuttaa ettei persuilla ole kykyä omaan ajatteluun ja päätöksenteko
      Maailman menoa
      209
      2933
    3. Marinin hallituskaudella Suomen BKT sentään kasvoi

      Tämä ns. kauhukabinetti ei ole saanut aikaan kuin vahinkoa. Otti ennätysvelat rikkaiden veroalennuksiin ja sai työttömyy
      Maailman menoa
      61
      2460
    4. Drone-epäily Uudellamaalla

      Ihmisiä kehotetaan siirtymään sisätiloihin. https://www.is.fi/kotimaa/art-2000012008358.html
      Maailman menoa
      177
      1520
    5. Loppuiko MTV3 näkymästä? Vinkki, miten näet mm. Salatut elämät jatkossa

      MTV:n maksuttomien tv-kanavien (MTV3, MTV Sub, MTV Ava) näkyvyys Elisan palveluissa päättyi 12.5.2026. Tämä aiheutti har
      MTV3
      18
      1329
    6. Oho! Martina Aitolehti teki radikaalin hiusmuutoksen - Uskaltaisitko itse?

      Martina Aitolehti on menestyvä yrittäjä. Nyt hän on mukana Erikoisjoukot-realityssä. Erikoisjoukoissa Aitolehti nähdään
      Kotimaiset julkkisjuorut
      55
      1320
    7. Muistatko? Pete Parkkonen kohahdutti intiimillä videolla - Katso se tästä!

      Pete Parkkonen sai kohujulkisuutta Kohta sataa -videolla. Nyt Parkkonen voi kohahduttaa Euroviisuissa ainakin silloin, j
      Kotimaiset julkkisjuorut
      14
      945
    8. 60
      943
    9. 89
      885
    10. Kullannuput kaahas Stopintakaa ja kolari...

      Tätä se mun uneni tiesi...
      Ilmajoki
      20
      834
    Aihe