BASH Shell ja Merkkijonon käsittelyä

Anonyymi

18

168

    Vastaukset

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000
    • Anonyymi

      Tepä olette älykäs, Te!

      • Anonyymi

        Niin kai kun Shelliltä se pöllii Sinolia! kun sen rahat taas loppu ja lääkkeetkin.


    • Anonyymi

      Olkoot merkkijono "123567890" muuttujassa "merkkijono".

      merkkijono="'1234567890" && echo "${merkkijono: -3}"

      Tulostaa "890".

      • Anonyymi

        Nyt on lista täydellinen, Kiitos!

        T. ketjun avaaja


    • Anonyymi

      Häirikkö levittää Perättömia valheita
      Firefoxista,
      Linuxista
      Ubuntusta.
      ym.

      • Anonyymi

        Ei levitä tässä ketjussa. Kommentoi sinne, missä levittää!


    • Anonyymi

      string="1234567890"; echo ${string:7}

      • Anonyymi

        Tuo taitaa tulostaa 7 ensimmäistä merkkiä?


      • Anonyymi

        Jos jatkan tätä ei avaukseen piiriin kuuluvaa, niin sed -komentoa käyttäen voidaan suodattaa ei halutut merkit:

        echo "1234567890" | sed -e "s/[1234567]//g" #890

        Edellisessähän täytyi tuntea merkkijonon pituus, ja tässä taas täytyy tuntea ei halutut merkit. Laitoin vain siksi, jos joku saisi tästä ahaa-elämyksen. Itse asiassa oletin tuossa joitakin aikoja sitten jonkun käyttäneen sed -komentoa viestinsä sisällön muokkaamiseen, kun oli systemaattisesti vaihdettu välilyönnit alaviivaan.

        T. Urpo


      • Anonyymi
        Anonyymi kirjoitti:

        Tuo taitaa tulostaa 7 ensimmäistä merkkiä?

        Kyllä se tulostaa kolme viimeistä, mutta siinä täytyy tuntea merkkijonon pituus, että osaa laittaa tuon 7. Siitä sainkin tuon idean tuohon hiukan sekavaan vastaukseen:

        string="1234567890"; echo ${string:$((${#string}-3))}

        Jossa suoritetaan tuo poistettavien määrän selvitys laskemalla, sehän on muuten sama kuin tuossa yllä oleva, mutta suora 7 on korvattu laskennan tuloksella, jolloin merkkijonon pituus voi olla mikä tahansa.


      • Anonyymi
        Anonyymi kirjoitti:

        Kyllä se tulostaa kolme viimeistä, mutta siinä täytyy tuntea merkkijonon pituus, että osaa laittaa tuon 7. Siitä sainkin tuon idean tuohon hiukan sekavaan vastaukseen:

        string="1234567890"; echo ${string:$((${#string}-3))}

        Jossa suoritetaan tuo poistettavien määrän selvitys laskemalla, sehän on muuten sama kuin tuossa yllä oleva, mutta suora 7 on korvattu laskennan tuloksella, jolloin merkkijonon pituus voi olla mikä tahansa.

        Joo niin se tulostaa alkaen merkistä 7 loppuun.

        No ehkä se -3 toimii aloituksen tehneen tapaukseen parhaiten.


    • Anonyymi

      Tässä selvitetään ensin merkkijonon pituus:

      echo ${#string}

      josta sitten vähennetään kolme
      string="1234567890"; echo ${string:$((${#string}-3))}

      loppu tulos on: 890

      T. Urpo

      • Anonyymi

        Tarviiko pituutta jossain muualla?

        Miinusmerkillä tehtäessä pitää muistaa välilyönnin merkitys sen ja kaksoispisteen välillä.

        merkkijono="1234567890";echo "${merkkijono:-3}"
        1234567890

        merkkijono="1234567890";echo "${merkkijono: -3}"
        890


    • Anonyymi

      string="1234567890"; echo ${string:7:10}

      • Anonyymi

        Näitä ratkaisuja jotka perustuu siihen että tunnetaan merkkijonon pituus ja että tunnetaan merkkijonon sisältö, on mielettömästi.


    • Anonyymi

      Tämä ketju saattaakin olla aloittelevalle, varsin käsittämätöntä sotkua.

    • Anonyymi

      Jos raaskii Pythonin polkaista käyntiin, niin vaihtoehto voisi olla

      echo "1234567890" | python3 -c "print(input()[-3:])"
      890

      • Anonyymi

        Ja sekin toimii, ja nätisti toimiikin.


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

    Luetuimmat keskustelut

    1. Porvarimediat paniikissa demareiden huiman kannatuksen vuoksi

      Piti sitten keksiä "nimettömiin lähteisiin" perustuen taas joku satu. Ovat kyllä noloja, ja unohtivat sen, että vaalit
      Maailman menoa
      98
      6378
    2. KATASTROFI - Tytti Tuppurainen itse yksi pahimmista kiusaajista!!!

      STT:n lähteiden mukaan SDP:n eduskuntaryhmän puheenjohtaja Tytti Tuppurainen on käyttäytynyt toistuvasti epäasiallisesti
      Maailman menoa
      357
      5897
    3. Mikä siinä on ettei persuille leikkaukset käy?

      On esitetty leikkauksia mm. haitallisiin maataloustukiin, kuin myös muihin yritystukiin. Säästöjä saataisiin lisäksi lei
      Maailman menoa
      60
      2853
    4. Lääppijä Lindtman jäi kiinni itse teosta

      Lindtman kyselemättä ja epäasiallisesti koskettelee viestintäpäällikköä. https://www.is.fi/politiikka/art-2000011780852
      Maailman menoa
      107
      2298
    5. Juuri nyt! Tytti Tuppurainen on käyttäytynyt toistuvasti epäasiallisesti

      Ai että mä nautin, Tytti erot vireille! "Käytös on kohdistunut avustajia ja toisia kansanedustajia kohtaan, uutisoi STT
      Maailman menoa
      107
      1978
    6. Onko kaivattusi

      liian vetovoimainen seksuaalisesti?
      Ikävä
      125
      1774
    7. Puolen vuoden koeaika

      Voisi toimia meillä. Ensin pitäis selvittää "vaatimukset" puolin ja toisin, ennen kuin mitään aloittaa. Ja matalalla pro
      Ikävä
      19
      1643
    8. Tytti Tuppurainen nöyryyttää avustajiaan

      Tytti Tuppurainen nöyryyttää SDP:n eduskuntaryhmän kokouksissa sekä avustajia että kansanedustajia. Hän nolaa ihmisiä ju
      Kotimaiset julkkisjuorut
      181
      1310
    9. On todella hassua

      Ajatella että pitäisit erityisen kuumana tai seksikkäänä?
      Ikävä
      73
      1217
    10. Huomaatteko Demari Tytti ei esitä pahoitteluitaan

      Samanlainen ilmeisesti kuin Marin eli Uhriutuu no he ovat Demareita ja muiden yläpuolella siis omasta mielestään
      Maailman menoa
      33
      1128
    Aihe