【发布时间】:2010-12-02 17:58:55
【问题描述】:
在 perl 中,我从一个目录中读取文件,并且我想同时打开它们(但逐行),以便我可以执行一个将所有第 n 行一起使用的功能(例如连接)。
my $text = `ls | grep ".txt"`;
my @temps = split(/\n/,$text);
my @files;
for my $i (0..$#temps) {
my $file;
open($file,"<",$temps[$i]);
push(@files,$file);
}
my $concat;
for my $i (0..$#files) {
my @blah = <$files[$i]>;
$concat.=$blah;
}
print $concat;
我只是一堆错误,使用未初始化的值,以及 GLOB(..) 错误。那么我怎样才能完成这项工作呢?
【问题讨论】:
-
Always将use strict; use warnings;放在 Perl 程序的开头。这样做,直到你确切知道为什么要这样做。 -
“这样做直到你知道你为什么要这样做。”然后继续这样做,除非你有一个非常具体的理由不这样做,并且确切地知道会发生什么。
标签: perl file simultaneous