Dans mon projet, j'ai l'extrait suivant:
local output="$(bash "${1##*/}")"
echo "$?"
Cela affiche toujours zéro en raison de la localsuppression, cependant, localentraîne le $?comportement correct de la variable: ce qui suppose le code de sortie du sous-shell.
Ma question est: comment puis-je garder cette variable locale tout en capturant la valeur de sortie?
shellcheckne détectera pas seulement ce problème mais suggérera la solution sur unix.stackexchange.com/a/281749/24718 !