在对文件执行某些操作之前,我需要扫描文件以查看它是否包含一个特定的行.如果该行不存在于文件中的任何位置,则退出(并且不对该文件执行任何进一步的操作).
在Perl中执行此操作的最有效方法是什么?
阅读文件的东西是 - 昂贵的部分始终是读取数据的过程.
所以 - 读取你的文件,如果你碰到匹配的一行则中断,如果你在循环之外做了测试;
my $found; while ( <$filehandle> ) { if ( m/Some Text to match here/ ) { $found++; last; } } die "Line not present" unless $found;