0
サブにあるperlでcsvをハッシュに解析し、subに渡されたキーの値を引数として返します。サブのPerlハッシュにCSVを構文解析し、そのサブプールに渡された値を返します。
host1, 12121
host2, 34324252345
host3, 45345
host4, 56363425
host5, 3.1
hostn, 435345
そして、私のコードは次のようである::CSVファイルは次のようである
#!/usr/bin/perl -w
my $host_key = getValue('host1');
print $host_key;
sub getValue {
my $host_file = 'test.csv';
my $hostname = $_[0];
chomp($hostname);
my %hash;
open my $fh, '<', $host_file or die "Cannot open: $!";
while (my $line = <$fh>) {
my @hostname_lines = split /,/, $line;
my $hostname = shift @hostname_lines;
$hash{$hostname} = \@hostname_lines;
}
close $fh;
my $host_value = $hash{$hostname};
return $host_value;
}
私はこのコードを実行すると、私の戻り値は、ARRAY(0x6b72d0)だろうが、私は12121
の戻り値を期待します
$ $ host_value = $ hash {'host1'} 私は$ host_value = 12121 – JavaRed
が投稿されていることを期待しています。その1つのエラーのダイレクトフィックスとその他のオプションがあります。 (投稿したコメントをいくつか削除しました。) – zdim