-3

わかりました..これは機能します...

sub getApSrvs
{
my %apsrv;
my $cluster;

  foreach $cluster (getClusters())
  {
  $apsrv{$cluster} = [split('\s+', `/$cluster/bin/gethosts -t app|sort -u`)];
  }
return %apsrv;
}

...ハムサンドイッチでこれを印刷するにはどうすればよいですか$cluster --> $hostname

さて、追加しました:

my %apsrv = getApSrvs();
for my $cluster (keys %apsrv) {
print "$cluster -> $apsrv{$cluster}\n";
}

そして私は...

qboc22 -> ARRAY(0x9111618)

qboc5 -> ARRAY(0x9111504)

qboc32 -> ARRAY(0x90e20cc)

qboc28 -> ARRAY(0x90e1d28)

qboc30 -> ARRAY(0x90e1f38)

qboc23 -> ARRAY(0x9111540)

qboc27 -> ARRAY(0x911181c)

qboc29 -> ARRAY(0x91115ac)

qbo -> ARRAY(0x90e2294)

4

2 に答える 2

1

$apsrv{$cluster} は配列への参照であるため、その内容を印刷したい場合は次のようにします。

my %apsrv = getApSrvs();
for my $cluster (keys %apsrv) {
    print "$cluster -> ", join(', ', @$apsrv{$cluster}), "\n";
}
于 2010-07-08T09:03:10.430 に答える
0
my %apsrv = getApSrvs();
for my $cluster (keys %apsrv) {
    print "$cluster -> $apsrv{$cluster}\n";
}

sort keys %apsrv順序が重要な場合は、印刷する前にキー ( ) を並べ替える必要があります。

于 2010-07-07T21:32:13.723 に答える