我$^I
在 perl 脚本中使用过有条件地搜索和替换。我想知道是$^I
在缓冲区中复制文件并在处理缓冲区后将整个缓冲区写回文件还是在行编辑中。
代码如下
$^I = "";
my $flag = 0;
while ($line = <>) {
if($line=~ m/some string/i) {
$flag = 1;
}
if(!$flag) {
$line =~ s/string/replace/g;
}
}
print $line;