小编Som*_*Guy的帖子

在行<>的数字eq(==)中使用未初始化的值

我在编写日志解析器时遇到问题.我刚开始编写更大的Perl程序/脚本,但是很好地理解bash/ksh,所以我在较小的规模上有一些经验.我为大量的代码道歉,但我不知道我哪里出错了(错误可能会误导,所以我读过).我在这里查了一下,PerlMaven和其他一些网站,并不能让它工作.

我正在尝试将日志文件提供给此解析器,让它按每列拆分日志,并按特定列的实例计数.

在这个解析器中,$statusCode代表一个成功的连接 - 所以我试图计算使用它成功连接的次数 - 以及有数据传输的成功连接的数量(如图所示$sentbyClientBytes > 0).如果连接成功但发送了0个字节,我只想将一个总和增加一个实例(successconnect++)

其余的数据暂时可以被丢弃,但我会做一些与其他一些列类似的东西 - 只是用不同的状态代码反复创建相同类型的函数.

在此先感谢Perl大师.你们和你的知识一起举办互联网.

#!/usr/bin/perl
#V0.1 - testing and initiation

use strict;
use warnings;

use Scalar::Util qw(looks_like_number);

my $filename = "/dir/log";

open( my $fh, '<', "/dir/log" ) or die "Cannot open < /root/fall_log";

while ( <$fh> ) {

    # wraps whole process from here to end

    my $sentcount      = 0;
    my $successconnect = 0;

    # define the counts and variables we're using

    my ( $date, …
Run Code Online (Sandbox Code Playgroud)

perl parsing

0
推荐指数
1
解决办法
85
查看次数

标签 统计

parsing ×1

perl ×1