vim - v automatickom scripte

oldfrog.linux na volny.cz oldfrog.linux na volny.cz
Čtvrtek Září 16 08:46:48 CEST 2004


Zdeněk Zikán wrote:

>>>V 3 suboroch je pre mna {cas od casu} potrebne globalne nahradit 
>>>stttttring1 za strrrrrrringggg2.
>>>Bezny sposob vim /cesta/suborX
>>>:%s/string1/string2/g
>>>:wq
>>> 
>>>
>>>      
>>>
>>Ve skriptu bych pouzil:
>>
>>   # sed 's/stttttring1/strrrrrrringggg2/g' /cesta/suborX > 
>>/tmp/_mytempfile.$RANDOM
>>   # mv /tmp/_mytempfile.$RANDOM /cesta/suborX
>>    
>>
>
>vim nejde spustit neintereaktivne s presmerovanym vstupem. Tez jsem to 
>kdysi zkousel. Ale je mozne, ze tam je na to --nejake-udelatko, ktere to 
>zaridi, to jsem tehdy nehledal.
>
>Takze byd pouzit na to same ed
>ed soubor<<E\OF
>1,$s/.../.../g
>w
>q
>EOF
>ale obcas mi to dela problemy (asi problem mezi klavesnici a zidli :-))
>Nebo pouzit sed, jak radi kolega. Jen bych tam nedaval to $RANDOM - pac 
>to vygeneruje dvakrat ruzne cislo :-)
>
No jasne...

    TEMPFILE="/tmp/_mytempfile.$RANDOM"
    FILE="/cesta/suborX"

    sed 's/stttttring1/strrrrrrringggg2/g'  $FILE > $TEMFILE
    mv $TEMPFILE $FILE


-- 
------------------------------
Ondrej Nemecek alias 'OldFrog'

tel (domu):     241766035
tel (prace):    222090701
icq:            250163477
------------------------------




Další informace o konferenci Linux