Ho uno script launch.sh
che si esegue come un altro utente in modo da creare file con il proprietario corretto. Voglio passare -x a questa invocazione se è stata originariamente passata allo script
if [ `whoami` == "deployuser" ]; then
... bunch of commands that need files to be created as deployuser
else
echo "Respawning myself as the deployment user... #Inception"
echo "Called with: <$BASH_ARGV>, <$BASH_EXECUTION_STRING>, <$->"
sudo -u deployuser -H bash $0 "$@" # How to pass -x here if it was passed to the script initially?
fi
Ho letto la pagina di debug di bash ma non sembra esserci alcuna opzione chiara che indichi se lo script originale è stato avviato -x
.
[[ $- == *x* ]]
per la corrispondenza dei motivi.