Bonjour à tous,
Je suis débutant sou Linux et je voudrais savoir à quoi correspond la notation $$ dans un script shell, par exemple $$(variable) ?
Merci
Bonjour à tous,
Je suis débutant sou Linux et je voudrais savoir à quoi correspond la notation $$ dans un script shell, par exemple $$(variable) ?
Merci
Techniquement, ce serait plus:
Qui lui indique que le shell dans lire le contenu de 'variable'.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 $(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.
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
Code : Sélectionner tout - Visualiser dans une fenêtre à part printf "$$(variable)"
C'est bien ça?
Code : Sélectionner tout - Visualiser dans une fenêtre à part $(variable)
![]()
en bash :soit le PID du shell et le texte (var)...
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)
?
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
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 "$"...
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)
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]
Partager