Bostjan Janezic wrote:
> Grega Fajdiga je rekel(la):
>> sed -e s/charset=Windows-1252/charset=Windows-1250/ *.htm
>>
>> Namesto zamenjave, mi prek zaslona zbrzi vsebina vseh datotek
>> html, zamenjave pa ne naredi.
>>
>> Kaj pocnem narobe?
> Takole pravi eno navodilo za sed:
> 
> If you want it to make changes for every word, add a "g" after the last 
> delimiter
> and use the work-around:
> 
>     sed 's/[^ ][^ ]*/(&)/g' <old >new
> Pozabil si "g". :)

Niti ne.. Sed kot tak ti bo output svojega dela vrgel na stdout, od 
koder ga moras potem ustrezno redirectati (temporary datoteke, 
preimenovanje,.), kot naprimer v spodnjem primeru:

#!/bin/sh

for file in $(grep -il "Hello" *.txt)
do
sed -e "s/Hello/Goodbye/ig" $file > /tmp/tempfile.tmp
mv /tmp/tempfile.tmp $file
done

.. ce pa hoces zadevo resiti elegantno, lahko pa uporabis Perlov in-line 
replacement:

perl -pi -e 's/charset=Windows-1252/charset=Windows-1250/' *.htm

..

lp, Stojan
_______________________________________________
lugos-list mailing list
lugos-list@lugos.si
http://liste2.lugos.si/cgi-bin/mailman/listinfo/lugos-list

Одговори путем е-поште