Nel mio progetto ho il seguente frammento:
local output="$(bash "${1##*/}")"
echo "$?"
Questo stampa sempre zero a causa della local
rimozione, tuttavia, local
comporta il $?
comportamento corretto della variabile: che consiste nell'assumere il codice di uscita dalla subshell.
La mia domanda è: come posso mantenere locale questa variabile e catturare anche il valore di uscita?
shellcheck
non solo risolverà questo problema, ma suggerirà la soluzione su unix.stackexchange.com/a/281749/24718 !