IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage Perl Discussion :

traitement de données en sortie standard


Sujet :

Langage Perl

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    43
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 43
    Par défaut traitement de données en sortie standard
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    my $ssh = Net::SSH::Perl->new($host,,protocol=>'1,2');
    $ssh->login($user, $pass);
    my($stdout, $stderr, $exit) = $ssh->cmd($cmd);
    print $stdout;
    Voici mon code qui me permet de me connecter sur une machine en ssh et d'effectuer un zcat (identique à la cmd cat pour les archives .gz) sur des fichiers.
    J'aimerai afficher par exemple les 3 premières lignes de ma sortie standard.
    Quelqu'un pourrait m'indiquer la route à suivre pour faire ça ?

    Merci d'avance.

  2. #2
    Expert confirmé
    Avatar de Jedai
    Homme Profil pro
    Enseignant
    Inscrit en
    Avril 2003
    Messages
    6 245
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Avril 2003
    Messages : 6 245
    Par défaut
    Il te suffit de split()er $stdout selon les fins de lignes, puis d'afficher les trois premiers éléments :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    my $ssh = Net::SSH::Perl->new($host,,protocol=>'1,2');
    $ssh->login($user, $pass);
    my($stdout, $stderr, $exit) = $ssh->cmd($cmd);
    @out = split /\n/, $stdout;
    print (join "\n", @out[0..2]);
    --
    Jedaï

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Logiciel traitement de données vers une sortie définie
    Par ced236 dans le forum Logiciels Libres & Open Source
    Réponses: 1
    Dernier message: 29/06/2015, 20h52
  2. Réponses: 0
    Dernier message: 24/04/2012, 21h30
  3. Rediriger la sortie standard d'erreur avec un traitement
    Par bubulemaster dans le forum Shell et commandes GNU
    Réponses: 2
    Dernier message: 16/02/2011, 18h16
  4. Réponses: 5
    Dernier message: 24/12/2003, 09h49
  5. Réponses: 16
    Dernier message: 18/07/2003, 17h16

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo