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 :

Signification de $$


Sujet :

Linux

Vue hybride

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

    Informations forums :
    Inscription : Mai 2002
    Messages : 13
    Par défaut Signification de $$
    Bonjour à tous,

    Je suis débutant sou Linux et je voudrais savoir à quoi correspond la notation $$ dans un script shell, par exemple $$(variable) ?

    Merci

  2. #2
    Modérateur
    Avatar de N_BaH
    Profil pro
    Inscrit en
    Février 2008
    Messages
    7 660
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 7 660
    Par défaut
    echo $$ retourne l'IDentifiant du Processus courant (PID), en l'occurrence celui du script.
    cf. man bash

    $$(variable) ? jamais vu...
    N'oubliez pas de consulter les cours shell, la FAQ, et les pages man.

  3. #3
    Responsable 2D/3D/Jeux


    Avatar de LittleWhite
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2008
    Messages
    27 129
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

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

    Informations forums :
    Inscription : Mai 2008
    Messages : 27 129
    Billets dans le blog
    149
    Par défaut
    Techniquement, ce serait plus:
    Qui lui indique que le shell dans lire le contenu de 'variable'.

    $$(variable), c'est possible que ce soit dans un echo. Dans le genre, on affiche un '$' avant le contenu de la variable, mais j'en suis pas sur.
    Vous souhaitez participer à la rubrique 2D/3D/Jeux ? Contactez-moi

    Ma page sur DVP
    Mon Portfolio

    Qui connaît l'erreur, connaît la solution.

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Mai 2002
    Messages
    13
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2002
    Messages : 13
    Par défaut
    Merci pour vos éclairages.
    En effet, mon script a pour but d'écrire un autre script (un makefile en l'occurrence) donc
    signifie que le script va écrire un autre script avec
    C'est bien ça?

  5. #5
    Modérateur
    Avatar de N_BaH
    Profil pro
    Inscrit en
    Février 2008
    Messages
    7 660
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 7 660
    Par défaut
    en bash :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    var=bla
    echo "$var"
    bla
    echo "${var}"
    bla
    echo "\${var}"
    ${var}
    echo "\$var"
    $var
    echo "$$(var)"
    7218(var)
    soit le PID du shell et le texte (var)...
    ?
    N'oubliez pas de consulter les cours shell, la FAQ, et les pages man.

  6. #6
    Membre prolifique
    Avatar de Sve@r
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2006
    Messages
    12 835
    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 835
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par flavien tetart Voir le message
    Merci pour vos éclairages.
    En effet, mon script a pour but d'écrire un autre script (un makefile en l'occurrence) donc
    signifie que le script va écrire un autre script avec
    C'est bien ça?
    La syntaxe $(programme) qu'on trouve aussi écrite sous forme plus ancienne `programme` indique au shell courant d'aller exécuter ledit programme et de ramener à l'endroit du script ce que le programme a affiché. Permet ainsi au shell d'utiliser un programme externe pour faire ce qu'il ne sait pas faire lui-même.
    Exemples
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    rep=`pwd`
    rep=$(pwd)
    i=0
    i=`expr $i + 1`
    i=$(expr $i + 1)
    liste=`ls -l`
    liste=$(ls -l)
    Maintenant, dans la syntaxe "$$(programme)", le "$$" prend le pas et est interprété comme le pid et le reste (programme) comme un bête texte. Sauf si le premier "$" est précédé d'un backslash demandant au shell de ne pas l'utiliser comme métacaractère mais comme simple texte. Dans ce cas, t'auras alors ce que $(programme) affiche précédé d'un "$"...
    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. Réponses: 3
    Dernier message: 07/09/2004, 12h01
  2. [Mots cles]Signification de transient et volatile
    Par Pill_S dans le forum Langage
    Réponses: 2
    Dernier message: 14/07/2004, 11h58
  3. Réponses: 4
    Dernier message: 22/01/2004, 08h27
  4. Recherche la signification d'expressions en C
    Par sbadecoder dans le forum C
    Réponses: 16
    Dernier message: 20/08/2003, 07h35
  5. i386, x86 signification ?
    Par Thcan dans le forum Assembleur
    Réponses: 7
    Dernier message: 04/01/2003, 21h36

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