- 論壇徽章:
- 1
|
您好!咨詢您一個(gè)perl的問題。
$oldname文件的文本內(nèi)容如下所示:
.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以上的內(nèi)容全部通過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文件中打印的為什么不是我想要的內(nèi)容,而是整個(gè)$oldname文件的內(nèi)容拷貝,求各位指道。
謝謝。 |
|