Mikä komento

aapuja

Millä komennolla voi poistaa tekstitiedostosta kaikki tyhjät ja #-merkillä alkavat rivit?

Joku putkittu cat-komento etsitään siis.

6

427

    Vastaukset

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000
    • tälleen

      cat test.txt|grep -ve ^#|grep -ve ^$

      Eli etsitään #-alkuiset ja rivit joiden alussa rivinvaihto ja jätetään ne pois.

      • aapuja

        Kiitos vielä kerran.


      • Klassinen "useless use of cat" -tapaus ..

        Tuo lyhenee muotoon:
        grep -ve ^# test.txt |grep -ve ^$

        Toisaalta -e on myös turha tässä tapauksessa, joten tuonkin voi edelleen lyhentää muotoon:
        grep -v ^# test.txt |grep -v ^$

        Tästä vielä jatkamalla käytetäänkin egrepiä (joka on teknisesti sama asia kuin sanoisi grep -E):
        egrep -v '(^#|^$)' test.txt

        Merkin ^ voi vielä siirtää (molempien regexpien yhteinen tekijä alussa), jolloin saadaan sopivan lyhyt lauseke:
        egrep -v '^(#|$)' test.txt


      • tälleen
        Mik26 kirjoitti:

        Klassinen "useless use of cat" -tapaus ..

        Tuo lyhenee muotoon:
        grep -ve ^# test.txt |grep -ve ^$

        Toisaalta -e on myös turha tässä tapauksessa, joten tuonkin voi edelleen lyhentää muotoon:
        grep -v ^# test.txt |grep -v ^$

        Tästä vielä jatkamalla käytetäänkin egrepiä (joka on teknisesti sama asia kuin sanoisi grep -E):
        egrep -v '(^#|^$)' test.txt

        Merkin ^ voi vielä siirtää (molempien regexpien yhteinen tekijä alussa), jolloin saadaan sopivan lyhyt lauseke:
        egrep -v '^(#|$)' test.txt

        Tosi on. Ei vaan tahdo muistua mieleen kaikki konstit vaan tulee käytettyä ekaa mikä toimii.

        Hyvä tarkennus kuitenkin. :)


      • kysymys
        tälleen kirjoitti:

        Tosi on. Ei vaan tahdo muistua mieleen kaikki konstit vaan tulee käytettyä ekaa mikä toimii.

        Hyvä tarkennus kuitenkin. :)

        egrep -v '(^#|^$)' test.txt


        jos ^$ on tyhjä rivi, niin mikä on rivi, joka alkaa $-merkillä ?


      • tämä
        kysymys kirjoitti:

        egrep -v '(^#|^$)' test.txt


        jos ^$ on tyhjä rivi, niin mikä on rivi, joka alkaa $-merkillä ?

        ^\$


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

    Luetuimmat keskustelut

    1. Se oli siinä sitten

      Yhdysvaltain presidentti Donald Trump on määrännyt kaiken maan Ukrainalle toimittaman sotilaallisen tuen tauolle, kertoo
      NATO
      727
      2266
    2. Paljonko aikaa on kulunut siitä kun viimeksi tapasit hänet?

      Päiviä? Viikkoja? Kuukausia? Vuosia?
      Ikävä
      50
      2259
    3. Tiedätkö, että haluaisin panna

      Sinua. Onko sinulla samanlaiset ajatukset ja tunteet?
      Ikävä
      125
      2173
    4. Mikä sinua ja kaivattuasi

      Yhdistää?
      Ikävä
      127
      2113
    5. Ajelen varmaan siellä suunnalla

      taas yöllä, vahingossa käyn sun pihalla. 😏 m
      Ikävä
      54
      1756
    6. Trump tekee rauhan Amerikan ja Venäjän ehdoilla

      Ukraina luovuttaa Venäjän haluamat alueet Venäjälle. Ukraina luovuttaa Amerikan haluamat arvokkaat mineraalit Amerikall
      Maailman menoa
      241
      1633
    7. Hyväksytty kaivattusi

      Vartaloa vai et? Rehellinen vastaus
      Ikävä
      31
      1361
    8. Syvälliset keskustelut

      Olisivat tärkeintä ensisijaisesti hänen kanssaan Tulisi sellainen hetki, mutta kaikki meni pieleen
      Ikävä
      20
      1309
    9. Olisipa sitä henkisesti eheämpi ja rohkeampi

      mikään maallinen mammona ei itseäni kiinnosta, eikä sen menetys kiinnostus. Mutta kun kohtaa jonkun sykäyttävän ihmisen,
      Ikävä
      16
      1195
    10. Kyllähän tämä vähän kirpaisee

      Mutta oman sisäisen rauhan vuoksi jätän sinut nyt historiaan. Todennäköisesti olet jo sinäkin mennyt eteenpäin. Olipah
      Ikävä
      38
      1137
    Aihe