Mikä komento

aapuja

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

Joku putkittu cat-komento etsitään siis.

6

699

    Vastaukset 6

    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. Mihin kiinnitit ensimmäisenä

      huomiota kaivatussasi?
      Ikävä
      98
      1314
    2. Poutalan onnettomuus

      https://www.mtvuutiset.fi/artikkeli/ministeri-mika-poutala-vakavassa-onnettomuudessa/9375980 Kumma kun jutussa ei manit
      Maailman menoa
      104
      1062
    3. Koska olet ihastunut minuun

      Kysymys sulle. Oma vastaus, tänä vuonna. ❤️
      Ikävä
      61
      887
    4. Missä on Sofia Virta? Loistaa poissaolollaan Erikoisjoukot uudelta kaudelta

      Vihreiden puheenjohtaja, kansanedustaja Sofia Virta pääsi otsikoihin, kun tieto hänen osallistumisestaan Erikoisjoukot-k
      Kotimaiset julkkisjuorut
      38
      880
    5. Olen pahoillani

      Olen mokannut pahasti ja pilannut sinun ja monen muun ihmisen maineen. Anteeksi. Muutan toiselle paikkakunnalle. Hyvästi
      Ikävä
      54
      872
    6. Junaonnettomuus

      Kuka jäi junan alle?
      Haapajärvi
      3
      838
    7. Onko sinulla vihan tunteita

      Minua kohtaan? Haluatko kostaa jotakin tai tehdä pahaa? Voit tähän sanoa ihan luottamuksella.
      Ikävä
      128
      817
    8. mitä olet valehdellut

      kaivatullesi? kerro rehellisesti totuus
      Ikävä
      65
      675
    9. Naisen kimppuun lenkkipolulla

      Poliisin tietojen mukaan noin 30–40 vuotias ulkomaalaistaustaisen näköinen mies kävi naisen kimppuun yllättäen Rentukant
      Kajaani
      50
      624
    10. Ei ole siitä kiinni

      Että en tykkäisi. Tykkään liikaa, mutta se on epäsopivaa. Hirveää kidutusta ruokkia tunnetta täällä, jos todellisuudessa
      Ikävä
      34
      570
    Aihe