draft: Paramètre && - retour du PID
This commit is contained in:
@@ -0,0 +1,5 @@
|
|||||||
|
{
|
||||||
|
"title": "Variable `$$` — récupérer le PID du shell",
|
||||||
|
"slug": "symbole-double-et-commercial-2",
|
||||||
|
"_updated_at": "2026-05-16 15:59:07"
|
||||||
|
}
|
||||||
@@ -0,0 +1,22 @@
|
|||||||
|
# Variable `$$` — récupérer le PID du shell
|
||||||
|
|
||||||
|
La variable spéciale `$$` renvoie le **PID** (*Process IDentifier*) du shell courant. Elle est utile pour générer des noms de fichiers temporaires uniques, tracer un script dans les logs ou créer un fichier de verrou.
|
||||||
|
|
||||||
|
## Particularité dans les sous-shells
|
||||||
|
|
||||||
|
`$$` conserve toujours la valeur du shell **parent**, même lorsqu'elle est évaluée dans un sous-shell `( … )`. Pour obtenir le PID réel du processus en cours d'exécution, Bash propose la variable `$BASHPID`.
|
||||||
|
|
||||||
|
```
|
||||||
|
~ $ echo $$
|
||||||
|
17601
|
||||||
|
~ $ ( echo $$; echo $BASHPID )
|
||||||
|
17601
|
||||||
|
17634
|
||||||
|
```
|
||||||
|
|
||||||
|
Dans l'exemple ci-dessus :
|
||||||
|
|
||||||
|
- `$$` affiche `17601` dans les deux cas : c'est le PID du shell interactif d'origine.
|
||||||
|
- `$BASHPID` affiche `17634` : c'est le PID du sous-shell créé par les parenthèses.
|
||||||
|
|
||||||
|
Retenir la différence : **`$$` = PID du shell de référence**, **`$BASHPID` = PID du processus Bash réellement en cours**.
|
||||||
Reference in New Issue
Block a user