Mikä komento

aapuja

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

Joku putkittu cat-komento etsitään siis.

6

698

    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. Mikä oli suurin

      Ongelma välillämme?
      Ikävä
      109
      957
    2. Mikä Yllätti

      Kaivatussasi?
      Ikävä
      116
      943
    3. Rakastamisesi tarkoitus

      Mikä oli kaiken tarkoitus? En sitä tiedä, en ymmärrä. Olet mielessäni, alati. Olen miettinyt. Ei sillä taida olla merki
      Ikävä
      52
      671
    4. Tämä meidän välinen tilanne

      Se on tosi raskas mulle. Ihminen, jota haluan eniten elämääni, ihanin olento, enkä koskaan pääse näkemään häntä. Sydämen
      Ikävä
      34
      649
    5. Kohtalo antoi

      sinulle vielä mahdollisuuden valita oikein. Et siihen tarttunut.
      Ikävä
      48
      553
    6. Mitä Kärnässä tapahtui?

      Sinnen meni ambulanssi, paloauto, poliisiauto ja poliisimoottoripyörä.
      Lappajärvi
      5
      541
    7. Miten tästä pääsee

      Ikinä ylitse?
      Ikävä
      59
      508
    8. En ole hetkeen sinulle kirjoittanut nainen

      Vieläkin ajattelen sinua, jos voit uskoa. Tunteet minussa huutavat toivoa ja rakkautta, kun kylmä loogisuus taas pistää
      Ikävä
      43
      495
    9. Hoikkana olet pysynyt, ja nättinä

      Iloa silmille vähän liikaakin. Ei uskalla aina edes katsoa. Tulee liikaa kaipausta. Yhdelle ihanalle
      Ikävä
      17
      466
    10. Se katse...

      Täynnä rakkautta. Kunpa olisin tajunnut.
      Ikävä
      45
      457
    Aihe