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

Linux Discussion :

Problème d'exécution


Sujet :

Linux

  1. #1
    Futur Membre du Club
    Inscrit en
    Avril 2004
    Messages
    25
    Détails du profil
    Informations forums :
    Inscription : Avril 2004
    Messages : 25
    Points : 7
    Points
    7
    Par défaut Problème d'exécution
    bonjour les gens...

    g une petite kestio kom vou vou doutez.

    je lance un script perl avec la commande suivante :
    et g comme erreur :

    /usr/bin/ksh: syntax error: '(' unexpected.

    je vous direz ke je pige vraiment po d'ou ca vien sachant ke les PATH sont bons.

    Merci d'avance.
    Qui a peur est un peureux!!!

  2. #2
    Membre chevronné

    Profil pro
    Inscrit en
    Mars 2004
    Messages
    1 296
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2004
    Messages : 1 296
    Points : 1 803
    Points
    1 803
    Par défaut
    perl est un interpreteur, dans ton lancement c'est le shell qui est utiliser donc :
    ou dans la premiere ligne du script perl tu ajoute
    #!/bin/perl
    (lechemin de perl sur ta machine)
    cela permet d'indiquer au shell quel interpreteur utiliser
    Marc
    Slackware for ever ......
    BASH - KSH ( http://marcg.developpez.com/ksh/ )

  3. #3
    Futur Membre du Club
    Inscrit en
    Avril 2004
    Messages
    25
    Détails du profil
    Informations forums :
    Inscription : Avril 2004
    Messages : 25
    Points : 7
    Points
    7
    Par défaut
    le problème avec cette commande
    c'est kelle ne me permet pas de récupérer des variables d'environnement que je doi modifier dans mon script

    kant à ben il y est bien et c pour ca ke je compren po...
    Qui a peur est un peureux!!!

  4. #4
    Membre chevronné

    Profil pro
    Inscrit en
    Mars 2004
    Messages
    1 296
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2004
    Messages : 1 296
    Points : 1 803
    Points
    1 803
    Par défaut
    la le probleme c'est que tu veut lancer un script perl DANS l'ENVIRONNEMENT COURANT qui es un shell ... je vois pas trop comment si qq a je suis preneur
    Marc
    Slackware for ever ......
    BASH - KSH ( http://marcg.developpez.com/ksh/ )

  5. #5
    Membre du Club

    Profil pro
    Inscrit en
    Février 2004
    Messages
    49
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : Belgique

    Informations forums :
    Inscription : Février 2004
    Messages : 49
    Points : 59
    Points
    59
    Par défaut Re: Problème d'exécution
    Citation Envoyé par Smaugg
    /usr/bin/ksh: syntax error: '(' unexpected.
    Euh... Ce serait pas une erreur dans le script perl, betement ?

    Paske la ca veut quand même dire qu'il manque une parenthèse ou alors que certaines choses sont mal placées (ou comment resté dans le flou malgré des indications )

  6. #6
    Futur Membre du Club
    Inscrit en
    Avril 2004
    Messages
    25
    Détails du profil
    Informations forums :
    Inscription : Avril 2004
    Messages : 25
    Points : 7
    Points
    7
    Par défaut
    En fait, je pense m'apercevoir d'un truc, à savoir ke meme si la ligne suivante est présente dans mon script, en fait comme le disait MarcG, étant donné que je le lance dans l'environnement courant, il veut des lignes de commande en ksh (d'où la syntax error qui est du non pas a une erreur de Perl, mais o fait kil atten komme langage du KornShell ).

    Donc je vai bientot pleurer paske ca crain du MEGA boudin à ce nivo la...
    Qui a peur est un peureux!!!

  7. #7
    Membre du Club

    Profil pro
    Inscrit en
    Février 2004
    Messages
    49
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : Belgique

    Informations forums :
    Inscription : Février 2004
    Messages : 49
    Points : 59
    Points
    59
    Par défaut
    Juste comme ca, pour vérifier, que te retournes la commande suivante :
    ?

  8. #8
    Futur Membre du Club
    Inscrit en
    Avril 2004
    Messages
    25
    Détails du profil
    Informations forums :
    Inscription : Avril 2004
    Messages : 25
    Points : 7
    Points
    7
    Par défaut
    ca me retourne bien le path ke g mi dans mon script...
    Qui a peur est un peureux!!!

  9. #9
    Membre chevronné

    Profil pro
    Inscrit en
    Mars 2004
    Messages
    1 296
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2004
    Messages : 1 296
    Points : 1 803
    Points
    1 803
    Par défaut
    la ligne #!/usr/bin/perl doit être la 1ere
    sur quel Unix est tu ?
    Marc
    Slackware for ever ......
    BASH - KSH ( http://marcg.developpez.com/ksh/ )

  10. #10
    Futur Membre du Club
    Inscrit en
    Avril 2004
    Messages
    25
    Détails du profil
    Informations forums :
    Inscription : Avril 2004
    Messages : 25
    Points : 7
    Points
    7
    Par défaut
    c bien ma premiere ligne et je sui sou Solaris 5.8
    Qui a peur est un peureux!!!

  11. #11
    Membre chevronné

    Profil pro
    Inscrit en
    Mars 2004
    Messages
    1 296
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2004
    Messages : 1 296
    Points : 1 803
    Points
    1 803
    Par défaut
    Question bête ?
    si tu lance le script perl "normalement " ? perl mon_script te retourne t il une erreur ?
    et lancer comme suit :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    . /usr/bin/perl mon_script
    ?
    Marc
    Slackware for ever ......
    BASH - KSH ( http://marcg.developpez.com/ksh/ )

  12. #12
    Membre à l'essai
    Inscrit en
    Avril 2004
    Messages
    24
    Détails du profil
    Informations forums :
    Inscription : Avril 2004
    Messages : 24
    Points : 19
    Points
    19
    Par défaut
    Au risque d'etre ridicule, ton scriipt commence bien bien par :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    #!/usr/bin/perl -w
    use strict;
    ?

    et comme dit MarcG, un script tout bete te fais t'il la meme erreur ?
    C'est le newbie ke v'la !!!

  13. #13
    Futur Membre du Club
    Inscrit en
    Avril 2004
    Messages
    25
    Détails du profil
    Informations forums :
    Inscription : Avril 2004
    Messages : 25
    Points : 7
    Points
    7
    Par défaut
    euh je t'avouerai ke g po mis .

    je viens de le rajouter et visiblement il n'aime po tellement ke je ne déclare po la portée de mes variables...
    Qui a peur est un peureux!!!

  14. #14
    Futur Membre du Club
    Inscrit en
    Avril 2004
    Messages
    25
    Détails du profil
    Informations forums :
    Inscription : Avril 2004
    Messages : 25
    Points : 7
    Points
    7
    Par défaut
    en fait, pour chaque variable (ou preske) il me dit

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Global Symbol "nomdelavariable" requires explicit package name
    Là g un peu du mal (et oui ca fai po lontem ke jen fai du perl... )
    Qui a peur est un peureux!!!

  15. #15
    Membre à l'essai
    Inscrit en
    Avril 2004
    Messages
    24
    Détails du profil
    Informations forums :
    Inscription : Avril 2004
    Messages : 24
    Points : 19
    Points
    19
    Par défaut
    aie

    Bah disons que j'ai eu un cours cette annee mais j'ai jamais vu ce message d'erreur ...
    Tout ce que je sais, c'est qu'il faut que ton script commence avec le sheebang , pour bien afficher les erreurs et ... par ce que c'est mieux :s. Je crois que ca rend l'interpreteur mois permissif et donc aide l'utilisateur a genere un code plus aux normes de perl (bien que ce soit pas tres norme comme langage).

    Tit_henry
    C'est le newbie ke v'la !!!

  16. #16
    Membre du Club

    Profil pro
    Inscrit en
    Février 2004
    Messages
    49
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : Belgique

    Informations forums :
    Inscription : Février 2004
    Messages : 49
    Points : 59
    Points
    59
    Par défaut
    Ca c'est paske tu dois déclarer chaque variable par Sinon, comme le disais tit_henry, est-ce qu'un script tout con te fait la même erreur ?

    As-tu essayer de lancer ton script dans un autre shell que ksh ?

  17. #17
    Membre à l'essai
    Inscrit en
    Avril 2004
    Messages
    24
    Détails du profil
    Informations forums :
    Inscription : Avril 2004
    Messages : 24
    Points : 19
    Points
    19
    Par défaut
    ok pour moi

    Tit_henry
    C'est le newbie ke v'la !!!

  18. #18
    Futur Membre du Club
    Inscrit en
    Avril 2004
    Messages
    25
    Détails du profil
    Informations forums :
    Inscription : Avril 2004
    Messages : 25
    Points : 7
    Points
    7
    Par défaut
    donc messieurs...

    g essayé avec un script tout con

    genre
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    #!/usr/bin/perl -w
     
    $ENV{COUCOU}=GHGH;
    un truc tou merdique koi...

    et en fait il reconnait po cette ligne env{COUCOU}=GHGH (nan g po fait d'erreur de casse ou oublié le $, c komm ca kil doit le lire) ce ki me fai vraiment penser ke meme si mais variable ne sont pas bien déclarées (il manke my a chaque foi) et ben il utilise po l'interpréteur Perl...

    maintenant, g toujours eu du mal avec Unix et donc pour lancer dans un otre shell ke ksh ben je sai po faire..

    sachant ke chez moi c ksh par défaut.
    Qui a peur est un peureux!!!

  19. #19
    Expert éminent
    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
    Points : 8 586
    Points
    8 586
    Par défaut
    Attention, je crois que sous certain Unix, il faut impérativement un espace entre "#!" et "/usr/bin/perl" et pour vérifier que ça marche bien, fait plutôt un script du style :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    #! /usr/bin/perl
    use strict; use warnings;
     
    print "Hello world !";
    Ton propre script ne laisse aucune trace (en effet la variable d'environnement n'est modifiée qu'à l'intérieur du script)..

    --
    Jedaï

  20. #20
    Futur Membre du Club
    Inscrit en
    Avril 2004
    Messages
    25
    Détails du profil
    Informations forums :
    Inscription : Avril 2004
    Messages : 25
    Points : 7
    Points
    7
    Par défaut
    Et non ca ne marche po....

    malgré la ligne , il continue visiblement de vouloir interpréter le script par du Korn Shell...

    bouuuhouuuuuu....

    Donc voila, le réel problème est que malgré ma premiere ligne de script qui indique l'intrépréteur a utiliser, celle ci est visiblement ignorée...
    Qui a peur est un peureux!!!

+ Répondre à la discussion
Cette discussion est résolue.
Page 1 sur 2 12 DernièreDernière

Discussions similaires

  1. Proble avec un vhosts sous Apache (Mandrake 10.1)
    Par __fabrice dans le forum Apache
    Réponses: 2
    Dernier message: 27/05/2005, 13h11
  2. Aide sur la RS 232
    Par Andr0 dans le forum C
    Réponses: 5
    Dernier message: 12/04/2005, 13h58
  3. Proble capture direct Show
    Par liliemumue dans le forum DirectX
    Réponses: 3
    Dernier message: 13/12/2004, 21h04
  4. Réponses: 2
    Dernier message: 05/10/2004, 22h43
  5. ListView->Items->Clear() !!! Qques probl de perf
    Par Nicolas_a69 dans le forum C++Builder
    Réponses: 3
    Dernier message: 30/08/2002, 11h49

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