Files
abonnel-www/b9f0369a-2823-4af4-819c-3a1fc0cf2b8c/draft_overlay.md
T
2026-05-16 17:59:07 +02:00

22 lines
926 B
Markdown

# 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**.