|
| |||
|
|
Все мучаюсь со скриптингом Здравствуйте! Мне понадобилось написать программу, которая бы заменяла кусок файла, ограниченный словами "BEGIN" и "END" - другим файлом. Причем не просто, а каждая строка должна быть со смайликом в начале. sed не дает заменять много строк, на bash как-то сложно, awk я не знаю, попробовала Perl (см. под катом). Но как-то громоздко, никто не подскажет более компактное решение? sub zamenit { my ($in, $replace, $out) = @_; open ( IN , $in ) or die "%Error: $! $in\n" ; open ( OUT , ">$out" ) or die "%Error: $! $out\n" ; while (<IN>) { last if /BEGIN/; print OUT $_; } open (REPLACE, $replace) or die "%Error: $! $replace\n"; print OUT ":-) $_" while <REPLACE>; close REPLACE; while (<IN>) { last if /END/; } print OUT $_ while <IN>; close IN; close OUT; } |
||||||||||||||