tail -f | sed

Ilja Hallberg iha at regexp.se
Wed Apr 16 18:39:19 CEST 2008


> Nu ska vi inte vara såna. Enligt principen "Don't fix it if it aint
>  broke" borde du bara vara glad över att få predika awk till mig så jag
>  låter bli att använda fula gamla sed. ;)

Det finns en metodik i sed som jag tycker är praktisk och som jag inte
lyckats återfinna i awk. Mejsla ut en regexp från mer eller mindre
likformiga rader:

"sed -n 's/.*\(sökt text\).*/\1/p'"
"sed -n 's%.*\(sökt text\).*%\1%p"

$ echo "abba kalas bronco" | sed -n 's%.*\(kalas\).*%\1%p'
kalas

> echo "abba kalas bronco" | sed -n 's%.*\(ba ka\).*%\1%p'
ba ka

Tricket som jag ser det är att använda "-n" tillsammans med avslutande "p".
När jag vill mejsla ut mellanslagsseparerade kolumner, tex. webloggar,
från textrader tycker jag är awk fungerar bra, men jag vet inget sätt
att mejsla ut en regexp som är effektivare än sed ovan.

Roligaste  kommandoetymologin tycker jag är ursprunget till
epostkommandot "biff" :-)

Ilja


More information about the Stacken mailing list