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ä Yllätti

      Kaivatussasi?
      Ikävä
      173
      1569
    2. Mikä oli suurin

      Ongelma välillämme?
      Ikävä
      115
      1108
    3. Mitä Kärnässä tapahtui?

      Sinnen meni ambulanssi, paloauto, poliisiauto ja poliisimoottoripyörä.
      Lappajärvi
      15
      964
    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ä
      37
      905
    5. Se katse...

      Täynnä rakkautta. Kunpa olisin tajunnut.
      Ikävä
      78
      831
    6. Ei enää ulkoteltta ruokaa.

      Se oli sitten viimmeinen kerta kun tuonne teltalle menen.Laatu heikkenee joka vuosi ja annokset pienenee.Ei enää kiitos,
      Kuhmo
      35
      816
    7. 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ä
      56
      791
    8. 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ä
      54
      765
    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ä
      25
      759
    10. Kohtalo antoi

      sinulle vielä mahdollisuuden valita oikein. Et siihen tarttunut.
      Ikävä
      70
      701
    Aihe