shell awk search & replace

Matus UHLAR - fantomas uhlar na fantomas.sk
Středa Září 28 15:12:36 CEST 2005


>> >>potreboval bych v souboru nahradit retezce (konkretne jde o IP adresu),
>> >>neco jako:
>> >>
>> >>prikaz_replace "co" "cim" /soubor

Martin Kraus <martin.kraus na infonet.cz> wrote:
> a neco jako
> 
> awk '{ if ( $0 ~ /'"$1"'/ ) { 
>         print "'"$2"'" 
>       } else { 
>                 print $0 
>       }
>     }' "$3"
> 
> kde $1, $2, $3 jsou prvni,druhy a treti parametr skritpu. jediny problem by 
> mohl nastat pri znaku ".", ktery se chova jako nejaky znak, ne tecka. to by 
> se muselo escapovat pro pripad, ze by tam nebyly pouze ip adresy.

keby len bodka. v ~ sa pouzivaju regularne vyrazy, teda specialnych znakov
tam je viac. taktiez by to miesto kazdeho RIADKU co obsahuje prvy retazec by
vypisalo druhy retazec, co nebolo zadani (nahradit sa ma len dany retazec,
nie cely riadok).

-- 
Matus UHLAR - fantomas, uhlar na fantomas.sk ; http://www.fantomas.sk/
Warning: I wish NOT to receive e-mail advertising to this address.
Varovanie: na tuto adresu chcem NEDOSTAVAT akukolvek reklamnu postu.
Windows 2000: 640 MB ought to be enough for anybody


Další informace o konferenci Linux