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 :

explications commande source


Sujet :

Linux

  1. #1
    Membre averti
    Inscrit en
    Septembre 2006
    Messages
    414
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 414
    Points : 354
    Points
    354
    Par défaut explications commande source
    salut,
    quelqu'un pourrait il m'expliquer comment fonctionne la commande source de linux ?
    ps: je ne demande pas comment l'utiliser, mais ce qui se passe au niveau du processus, comment est executée la commande passée en parametre, et comment les variables d'environnement sont sauvegardées...
    __________
    "Any sufficiently advanced technology is indistinguishable from magic" Arthur C. Clarke

  2. #2
    Membre émérite
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Octobre 2008
    Messages
    1 515
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Octobre 2008
    Messages : 1 515
    Points : 2 505
    Points
    2 505
    Par défaut
    Tout ce passe exactement comme si "source <fichier>" était remplacé par le contenu de <fichier>.

  3. #3
    Expert éminent sénior
    Avatar de Sve@r
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2006
    Messages
    12 690
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Février 2006
    Messages : 12 690
    Points : 30 986
    Points
    30 986
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par kamouminator Voir le message
    salut,
    quelqu'un pourrait il m'expliquer comment fonctionne la commande source de linux ?
    ps: je ne demande pas comment l'utiliser, mais ce qui se passe au niveau du processus, comment est executée la commande passée en parametre, et comment les variables d'environnement sont sauvegardées...
    Le code de la commande passée en paramètre est simplement recopié à la place de "source" et ensuite ce code est exécuté.

    La question de l'environnement ne se pose même pas. Comme le code appelé est directement intégré dans le script courant, ce code a accès à toutes les variables du script en question.

    Exemple: factorielle en shell sans boucle ni récursivité
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    #!/bin/sh
     
    nb=${nb:-$1}
    res=`expr ${res:-1} \* $nb`
    nb=`expr $nb - 1`
    test $nb -gt 1 && source $0 || (test $res -ne 0 && echo $res || echo 1)
    Mon Tutoriel sur la programmation «Python»
    Mon Tutoriel sur la programmation «Shell»
    Sinon il y en a pleins d'autres. N'oubliez pas non plus les différentes faq disponibles sur ce site
    Et on poste ses codes entre balises [code] et [/code]

Discussions similaires

  1. os.system / commande source
    Par debutant100 dans le forum Général Python
    Réponses: 3
    Dernier message: 09/03/2012, 07h43
  2. probleme avec la commande source
    Par dihinass dans le forum Linux
    Réponses: 1
    Dernier message: 04/01/2012, 15h08
  3. Commande source & Warnings
    Par faya972 dans le forum MySQL
    Réponses: 0
    Dernier message: 08/12/2009, 18h36
  4. Explication commande script
    Par vallesm77 dans le forum RedHat / CentOS / Fedora
    Réponses: 0
    Dernier message: 10/02/2009, 15h59

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