Recuperer le resultat d'un system sur plusieurs lignes ...

Recuperer le resultat d'un system sur plusieurs lignes ... - Perl - Programmation

Marsh Posté le 16-08-2004 à 23:14:01    

Bonjour à tous,
 
Bon dejà je précise je debute en perl ...
Ensuite je souhaiterais lancer une commande système qui renvoi beaucoup de ligne ..  
Je voudrais récupère ce résultat et afficher les N premières lignes ...
Je ne sais pas du tout comme m'y prendre j'ai effectué ceci :
 
open COMMAND, $command ;  
while (<COMMAND> ) {
      print "$_<br>";
}    
close COMMAND;
 
 
Mais ça ne fonctionne pas ... j'ai rien qui sors ...
 
Merci d'avance !

Reply

Marsh Posté le 16-08-2004 à 23:14:01   

Reply

Marsh Posté le 17-08-2004 à 03:46:03    

my @results = `$command`;
print @results[0..5];
 
où les bornes peuvent être modifiés

Reply

Marsh Posté le 17-08-2004 à 12:01:56    

Ca fonctionne mais ça ne m'affiche que la première ligne du résultat .. :/

Reply

Marsh Posté le 17-08-2004 à 12:05:31    

Je pense qu'il faudrait separer les resultats sur le caracètre de fin de ligne, mais je n'ai aucune idée de comment m'y prendre ... Je ne trouve pas de fonction 'split' ou quelque chose comme ça ... :/

Reply

Marsh Posté le 17-08-2004 à 12:13:13    

split(/\n/, $foo);
 
sinon fait un print scalar(@results) pour voir combien de ligne la commande te retourne

Reply

Marsh Posté le 17-08-2004 à 12:15:45    

Non j'ai bien ttes les lignes ...

Reply

Marsh Posté le 17-08-2004 à 12:18:49    

bin alors il est ou le problème?

Reply

Marsh Posté le 17-08-2004 à 12:22:34    

bon j'ai avancé mais lorsque je fais print @results[0..3] il ne va pas à la ligne ... et je suppose que je ne peux pas placer un \n au milieu ..

Reply

Marsh Posté le 17-08-2004 à 12:22:52    

il affiche les 5-6 lignes sur une seule? si c'est ca­...
 
print join("\n", @results[0..5]);


Message édité par burgergold le 17-08-2004 à 12:27:11
Reply

Marsh Posté le 17-08-2004 à 12:25:12    

C'est bon j'ai reussi merci pour ton aide :)

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed