nahradit retazec...

Miroslav Lachman 000.fbsd at quip.cz
Wed Dec 21 10:00:25 CET 2005


Lubomir Majersky wrote:
> Peter Lecky napsal(a):
> 
>>a co tak mcedit a F4?
>>
> 
> ...pri 10-kach tisicoch suboroch? Clovece si dobry...
> Napisal som predsa subor1, subor2,...suborx
> 
> Miroslav Lachman napsal(a):
>  > Nestacil by na to sed s volbou -i (Edit files in-place, saving backups
>  > with the specified extension.) ?
>  > Vice viz man sed.
> 
> Jan Pechanec napsal(a):
>  > 	v rychlosti, tenhle prikaz edu:
>  > :11g/^/s/50/60/g
>  > 	ti na 11. radce nahradi retezec 50 za 60.
>  > 	scriptem si aplikuj na ty svoje soubory prislusny ed command
> 
> 	Vdaka to som potreboval, stacilo mi len napisat cim, pretoze doteraz 
> som nemal prakticky ziadne skusenosti s "ed" a "sed", a tak som ani 
> nevedel co hladat. Zacal som si to studovat...
> 
> ...a urobil som si taky jednoduchy skriptik,
> 
> ### Vytvaram tempfile
> for i in /home/test/*/test[0-9];
> do /usr/bin/sed 's/retazecA/retazecB/g' $i > $i.tmp;
> done;
> ### Muvnutie do povodnych suborov
> for i in /home/test/*/test[0-9];
> do /bin/mv $i.tmp $i;
> done;
> 
> ktory sice funguje bez problemov, ale az tak celkom sa mi nepaci, pretoze:
> 
> a. neriesi to subory napriklad test11, test12 (musim to explicitne 
> uviest v skripte test[0-9][0-9])
> 
> b. vystup davam do dalsieho suboru, co by nebolo az tak na skodu, ale 
> predstavoval som si to tak, ze budem pracovat len s tym jednym suborom.
> Skusal som to aj takto sed 's/retazecA/retazecB/g' test1 > test1 , ale 
> vysledok je neziaduci - prazdny subor
> 
> Pytam sa teda Vas, starych harcovnikov, dalo by sa to urobit este 
> jednoduchsie? Netreba siahodlho rozvadzat, staci nakopnut, ja si nastudujem
> 
> Vdaka

Asi jste spatne cetl muj e-mail, nebo manual sedu, psal jsem tam, ze 
mate pouzit volbu -i, ktera zajistuje editaci souboru primo a pokud tomu 
date i nejakou hodnotu, jako treba BAK (sed -i BAK), tak vam to do 
souboru stejneho jmena s koncovkou BAK ulozi i zalohu puvodniho souboru.

Miroslav Lachman



More information about the Users-l mailing list