我们在处理数据的时候, 有时候需要知道某个文本中的数据有多少行。
今天我们来看看如何简单的计算文本的行数。
比如, 我们有一个文件 test.txt, 我们需要知道它有多少行数据。
我们来看第一种方法:
调用系统命令wc, 在很多系统中, 内置了wc命令, 我们可以调用该命令来获取文件的行数。具体wc使用方法和参数可以参考该命令的help文档, 这里就不进行展开讨论了。
my $file = 'test.txt';
my $count = `wc -l < $file`;
die "failed to wc:$?" if $?;
chomp($count);
print "total: $count\n";
那么要是没有该命令呢, 或者我们希望在perl中来统计实现呢?
我们来看下面的处理方法:
my $count = 0;
open my $fh, '<', $file or die "failed to open file:$file\n";
$count++ while <$fh>;
close $fh;
print "total: $count\n";
我们每次读取一行, 将计数count进行加1, 因为我们不需要具体的内容, 一次直接丢弃具体的内容。
因为我们需要在perl中对文件进行读取, 因此效率没有上一种快, 不过对于一般情况, 差别还是不大的。
文章转载自EasyPerl,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。




