Il comando seguente stampa correttamente "0" o "1" a seconda dell'errore o meno perché ho messo $? all'interno del comando "su".
sudo su -m $USER -c "./shutdown.sh &> /dev/null; echo \$?"
Tuttavia, se lo faccio:
sudo su -m $USER -c "$BASE/bin/shutdown.sh &> /dev/null"; echo $?
stampa sempre "0" perché l'attuale "su" avrà sempre successo, anche se la parte del comando fallisce.
Qualche idea su come posso recuperare il codice di uscita della subshell?