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 :

[langage] sortie standard linux


Sujet :

Langage Perl

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Mars 2004
    Messages
    162
    Détails du profil
    Informations forums :
    Inscription : Mars 2004
    Messages : 162
    Par défaut [langage] sortie standard linux
    Bonjour,

    Comment se fait-il que lorsque j'exécute mon programme 'Hello world' en Perl sous Linux, le résultat ne s'affiche pas dans ma console. Lorsque je l'exécute en redirigeant la sortie vers un fichier texte, le fichier texte contien 'Hello world' mais lorsque j'effectue un 'cat' de mon fichier, rien ne s'affiche ??

    Pour moi, c'est un phénomène très très inexpliqué.....

  2. #2
    Membre expérimenté
    Avatar de GLDavid
    Homme Profil pro
    Head of Service Delivery
    Inscrit en
    Janvier 2003
    Messages
    2 895
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Head of Service Delivery
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Janvier 2003
    Messages : 2 895
    Par défaut
    Peux-tu nous montrer le source ainsi que la ligne de commande où tu appelles ton script ?

    @ ++
    GLDavid
    Consultez la FAQ Perl ainsi que mes cours de Perl.
    N'oubliez pas les balises code :tagcode: ni le tag :resolu:

    Je ne répond à aucune question technique par MP.

  3. #3
    Membre confirmé
    Inscrit en
    Mars 2004
    Messages
    162
    Détails du profil
    Informations forums :
    Inscription : Mars 2004
    Messages : 162
    Par défaut
    LA SOURCE:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    #!/usr/bin/perl
    #
    print 'Hello world';

    LA LIGNE DE COMMANDE:
    Et la, rien ne s'affiche.

    A noter pourtant que si je tape:
    un fichier temp est crée et lorsque je l'édite avec vi, je vois bien qu'il y a écrit Hello world dedans, mais si je tape:
    alors là et bien rien ne s'affiche non plus...

    MYSTERE...

  4. #4
    Membre Expert
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2003
    Messages
    1 603
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Industrie

    Informations forums :
    Inscription : Février 2003
    Messages : 1 603
    Par défaut
    tu as vraisemblablement un problème d'affichage qui n'a rien à voir avec Perl.

    ton shell n'aurait-il pas un problème ?

  5. #5
    Membre confirmé
    Inscrit en
    Mars 2004
    Messages
    162
    Détails du profil
    Informations forums :
    Inscription : Mars 2004
    Messages : 162
    Par défaut
    très bonne question ! je n'en ai aucune idée !!

  6. #6
    Membre confirmé
    Inscrit en
    Mars 2004
    Messages
    162
    Détails du profil
    Informations forums :
    Inscription : Mars 2004
    Messages : 162
    Par défaut
    cependant détail intéressant:

    dés que je modifie mon fichier temp par exemple en rajoutant une ligne ou un mot et que j'enregistre le résultat de:
    est tout à fait normal...

    c'est pourquoi j'ai pensé que c'était perl mon problème.

  7. #7
    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
    Peut-être qu'un simple "\n" à la fin de ton print t'aiderait, il est en effet très fortement recommandé sous Unix de terminer ses fichiers textes par un saut de ligne, et celà a de plus l'avantage sous Perl comme sous beaucoup d'autres langages de provoquer le vidage du buffer. (après le fait que le Hello world ne soit pas affiché du tout est sans doute un problème de shell)
    Bonne chance !

    --
    Jedaï

  8. #8
    Mr6
    Mr6 est déconnecté
    Membre émérite

    Homme Profil pro
    Inscrit en
    Septembre 2004
    Messages
    608
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Secteur : Service public

    Informations forums :
    Inscription : Septembre 2004
    Messages : 608
    Par défaut
    Je serais tenté de confirmer le fait que le pb est lié au shell, et que le \n est la seule solution. En effet, certains shells "mangent" ce qu'il y a sur leur ligne pour afficher le prompt, là où d'autres se contentent de se mettre à la suite. J'ai déjà eu ca une fois sous un vieux pingouin...

    @+
    Mr6

  9. #9
    Membre confirmé
    Inscrit en
    Mars 2004
    Messages
    162
    Détails du profil
    Informations forums :
    Inscription : Mars 2004
    Messages : 162
    Par défaut
    En effet, l'ajout d'un \n résoud mon problème, merci bcp...

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

Discussions similaires

  1. system et redirection sortie standard sous linux
    Par Choupinou dans le forum Linux
    Réponses: 14
    Dernier message: 11/01/2007, 23h25
  2. [langage] Repcuperation sortie standard
    Par Sentenza28 dans le forum Langage
    Réponses: 3
    Dernier message: 22/03/2005, 17h25
  3. rediriger la sortie standard vers un textarea
    Par gromite dans le forum Composants
    Réponses: 9
    Dernier message: 10/05/2004, 11h07
  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