Sed

Michal Kubecek mike na mk-sys.cz
Úterý Září 3 16:55:07 CEST 2002


On Tue, Sep 03, 2002 at 04:45:43PM +0200, rikitin na centrum.cz wrote:
> 
> mam problem se sed-em, pokud potrebuji zamenit jeden retezec za 
> druhy v souboru, ve kterem se vyskytuji radky vetsi nez 800 
> znaku, tak se mi prevede pouze prvni vyskyt retezce1. Me sed 
> nejake omezeni delky vstupniho radku?

Nevím, asi bude záležet na implementaci, ale tady je problém
v něčem jiném:

> Pr. sed -e 's/RET1/RET2/' soubor.txt

To skutečně nahradí jen první výskyt. Pokud chcete nahradit všechny,
použijte

  sed -e 's/RET1/RET2/g' soubor.txt

> Dale jsem se chtel zeptat, jak donutit sed, aby zmeny probehly ve 
> vstupni souboru?

Těžko, on je to totiž Stream EDitor. Takže se to obvykle dělá tak,
že filtrujete do dočasného souboru a pak ho přejmenujete na ten
původní. Nebo si uděláte kopii a tu pak filtrujete přes původní
soubor.

                                                   Michal Kubeček


Další informace o konferenci Linux