面对成百上千个文件,有时咱们须要查看它的最后行,单个文件打开将耗费大量时间,而经过Perl提取出最后行,将快速的帮助咱们处理繁琐的事务。code
整个目录彻底遍历,自动提取最后行blog
#!/usr/bin/perl use warnings; ########################################### #./readlast_line.pl log/ ########################################### my $indir = $ARGV[0]; opendir DIR, $indir or die "Connot open $indir: $!"; unlink "temp_line"; open(OUTFILE, ">>temp_line") || die ("Could not open file temp_line ! \n"); foreach my $file (sort readdir DIR){ #遍历目录下的文件 if($file =~ /^\./){ next; } #print "$indir$file\n"; print OUTFILE "\t\t $indir$file \t\t \n"; #输出文件名及其路径 my $last_line = `tail -10 $indir$file`; #反引号捕获 print OUTFILE "$last_line \n"; print OUTFILE "\n\n\n"; #分割不一样文件之间的换行 } close OUTFILE; rename 'temp_line','filelast_line'; print "\nOutput file: filelast_line\n";