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

Applications et environnements graphiques Discussion :

Souci avec la ligne d'exécutable #!


Sujet :

Applications et environnements graphiques

  1. #1
    Membre éprouvé
    Avatar de Antoine_935
    Profil pro
    Développeur web/mobile
    Inscrit en
    Juillet 2006
    Messages
    883
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur web/mobile

    Informations forums :
    Inscription : Juillet 2006
    Messages : 883
    Points : 1 066
    Points
    1 066
    Par défaut Souci avec la ligne d'exécutable #!
    Salut à toutes et tous

    Pour situer le contexte, j'ai récemment créé un petit shell, qui fait aussi office d'interpréteur.

    Hier, quelqu'un m'a soumis un bug qui m'a un peu étonné. Il avait écrit un script pour cet intepréteur, commençant par l'habituelle ligne
    Bien, ça devrait fonctionne à première vue, puisque l'exécutable existe bel et bien.
    Hélas non, lorsqu'on exécute ça avec bash (je n'ai pas testé avec d'autres shells, mais c'est dépendant du système je pense), il se borne à essayer d'utiliser bash pour ce script, et non pysh comme demandé.

    Par contre, la ligne
    fonctionne parfaitement bien. Elle n'est hélas que peu connue et bcp de gens risquent de se heurter à un problème, vu qu'il ne la connaitront pas.

    Voici donc enfin ma question qui arrive:
    Comment faire pour que #!/usr/bin/pysh fonctionne correctement ?

    Dois-je ajouter cet interpréteur dans un fichier quelconque ? J'ai bien essayé de regarder du côté de /etc, mais je n'ai rien vu.


    Toute info est la bienvenue

  2. #2
    Membre confirmé Avatar de alexp
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    459
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 459
    Points : 532
    Points
    532
    Par défaut
    la commande add-shell devrait t'etre utile. Son role consiste à ajouter le shell passé en argument au fichier /etc/shells.
    Vous êtes mélomanes? allez voir harmoniedecharolles.no-ip.org
    Tout est possible, tout est réalisable, le tout étant de savoir comment faire
    astuces pc
    gull villefranche

  3. #3
    Membre éprouvé
    Avatar de Antoine_935
    Profil pro
    Développeur web/mobile
    Inscrit en
    Juillet 2006
    Messages
    883
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur web/mobile

    Informations forums :
    Inscription : Juillet 2006
    Messages : 883
    Points : 1 066
    Points
    1 066
    Par défaut
    Il y est déjà listé, et rien n'y fait.

  4. #4
    Expert confirmé
    Homme Profil pro
    Inscrit en
    Septembre 2006
    Messages
    2 937
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2006
    Messages : 2 937
    Points : 4 358
    Points
    4 358
    Par défaut
    Citation Envoyé par Antoine_935 Voir le message
    Il y est déjà listé, et rien n'y fait.
    les interpréteurs désignés par #! ne doivent-ils pas être des programmes compilés ?
    (de mémoire ce problème apparaît aussi dans la liste des "bugs" de Groovy et JRuby… et la solution proposée est aussi de passer par bin/env…)

    et pysh n'est-il pas une tentative d'interpréteur de shell interprété ? (un shell en python ?) …

  5. #5
    Membre averti
    Inscrit en
    Janvier 2007
    Messages
    329
    Détails du profil
    Informations forums :
    Inscription : Janvier 2007
    Messages : 329
    Points : 366
    Points
    366
    Par défaut
    Salut,

    Essaie de regarder du côté de la commande "declare -p", qui liste les variables d'environnement disponibles.
    Exécute-la une fois sous Bash, puis sous Pysh, et compare. Si tu vois que le fait d'utiliser "#!/usr/bin/env" ajoute des variables d'environnement particulières, tu devrais pouvoir les faire ajouter directement par ton prog pysh.


    -

  6. #6
    Expert confirmé
    Homme Profil pro
    Inscrit en
    Septembre 2006
    Messages
    2 937
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2006
    Messages : 2 937
    Points : 4 358
    Points
    4 358

  7. #7
    Membre éprouvé
    Avatar de Antoine_935
    Profil pro
    Développeur web/mobile
    Inscrit en
    Juillet 2006
    Messages
    883
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur web/mobile

    Informations forums :
    Inscription : Juillet 2006
    Messages : 883
    Points : 1 066
    Points
    1 066
    Par défaut
    Citation Envoyé par JeitEmgie Voir le message
    et pysh n'est-il pas une tentative d'interpréteur de shell interprété ? (un shell en python ?) …
    Dans le mil C'est donc sans solution visiblement.

    Pour ce qui est de declare -p, il semblerait que ce soit un built-in de bash, qui n'existe donc pas encore sous pysh.


    Merci pour les infos

  8. #8
    Membre averti
    Inscrit en
    Janvier 2007
    Messages
    329
    Détails du profil
    Informations forums :
    Inscription : Janvier 2007
    Messages : 329
    Points : 366
    Points
    366
    Par défaut
    Citation Envoyé par Antoine_935 Voir le message
    Pour ce qui est de declare -p, il semblerait que ce soit un built-in de bash, qui n'existe donc pas encore sous pysh.

    Dans ce cas, passe par :
    Code python : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    import os
    print os.environ


    -

Discussions similaires

  1. Exécution avec les lignes des commandes
    Par ifdo7a dans le forum Débuter avec Java
    Réponses: 3
    Dernier message: 30/11/2011, 09h47
  2. Souci avec un programme exécutable
    Par billouDu92 dans le forum Débuter
    Réponses: 6
    Dernier message: 21/01/2011, 09h58
  3. [ASP/Flash] Toujours soucis avec sauts de ligne :(
    Par delavega dans le forum XML/XSL et SOAP
    Réponses: 2
    Dernier message: 15/12/2006, 18h31
  4. Réponses: 9
    Dernier message: 30/08/2006, 13h51

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