- 论坛徽章:
- 1
|
您好!咨询您一个perl的问题。
$oldname文件的文本内容如下所示:
.data section layout
Starting Virtual File
address Size address offset
---------------------------------
.sbss2 section layout
Starting Virtual File
address Size address offset
---------------------------------
.bss section layout
Starting Virtual File
address Size address offset
---------------------------------
00000000 00000c 400013
我想把$oldname文件中.data section layout以下,.bss section layout以上的内容全部通过print打印到文件$newname中,该如何操作?
我用下面的代码试了,没搞定。
open(OLDFILE, $oldname) || die "Error\n";
undef $/;
$OldFileString = <OLDFILE>;
$/ = "\n";
close(OLDFILE);
@lines = split(/\n/, $OldFileString );
open(NEWFILE, (">>" . $newname)) || die "Error\n";
foreach $line (@lines) {
if($line =~ (/.data section layout/../.bss section layout/)){
print NEWFILE "$line\n";
}
}
close(NEWFILE);
不知道为什么$newname文件中打印的为什么不是我想要的内容,而是整个$oldname文件的内容拷贝,求各位指道。
谢谢。 |
|