小编noa*_*oah的帖子

平均值函数在空数组上返回随机数

我正在使用 perl 5.16。

我有以下函数可以给出任何给定数组内的平均值:

sub GetAvgValue {
    my @Array = @_;

    my $Sum = 0;
    foreach my $CurVal (@Array) {
        $Sum += $CurVal;
    }

    if ( scalar(@Array) ) {
        return $Sum / scalar(@Array);
    }
    else {
        return undef;
    }
}
Run Code Online (Sandbox Code Playgroud)

undef我希望它在数组内没有元素时返回,但它返回一个看起来随机的整数:

print Dumper GetAvgValue([]);
# 1. iteration: $VAR1 = '42311136';
# 2. iteration: $VAR1 = '38006240';
# 3. iteration: $VAR1 = '39394784';
Run Code Online (Sandbox Code Playgroud)

perl

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

无法从 perl 脚本运行“compgen -c”

我想检查我的机器(RedHat)上的 perl 脚本中是否存在命令。

我试图检查是否compgen -c包含所需的命令,但从脚本内部运行它只会给我一个空的输出。其他命令工作正常。

示例.pl:

my $x = `compgen -c`;
print $x;
# empty output

my $y = `ls -a`;
print $y;
# .
# ..
# example.pl
Run Code Online (Sandbox Code Playgroud)

有可能的解决方案吗?或者有更好的方法来检查我的机器上的命令吗?

bash perl command redhat

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

标签 统计

perl ×2

bash ×1

command ×1

redhat ×1