Tout à fait, mais il s'agira d'une information globale, c'est-à-dire que la prochaine lecture de fichier se fera avec le même séparateur. C'est pourquoi je te recommande l'emploi de cette structure qui évite le problème en local()isant la modification du séparateur d'enregistrement :
1 2 3 4 5 6 7 8 9 10 11 12
|
my @sortie;
{
local $/ = " ";
@sortie = `/usr/local/nagios/libexec/check_nrpe -H $hostname -c check_cpu -n`;
}
print "$sortie[0] \n";
print "$sortie[1] \n";
print "$sortie[2] \n";
print "$sortie[3] \n";
print "$sortie[4] \n"; |
Par ailleurs, comme l'a fait remarquer getupa, une solution plus souple et sans-doute préférable est d'utiliser une construction de ce type :
1 2 3 4 5 6 7 8 9 10 11 12
|
my $ouput;
my @sortie;
$output = `/usr/local/nagios/libexec/check_nrpe -H $hostname -c check_cpu -n`;
@sortie = split /\s+/, $output;
print "$sortie[0] \n";
print "$sortie[1] \n";
print "$sortie[2] \n";
print "$sortie[3] \n";
print "$sortie[4] \n"; |
ou même :
@sortie = split /\s+/, scalar(`/usr/local/nagios/libexec/check_nrpe -H $hostname -c check_cpu -n`);
TIMTOWTDI comme on dit en Perl !
--
Jedaï
Partager