Jeśli funkcja powłoki wymaga określonego ustawienia -e / + e do działania, czy można ustawić to ustawienie lokalnie, a następnie przywrócić poprzednie ustawienie przed wyjściem z funkcji?
myfunction()
{
# Query here if -e is set and remember in a variable?
# Or push the settings to then pop at the end of the function?
set +e
dosomething
doanotherthing
# Restore -e/+e as appropriate, don't just do unconditional set -e
}
$-
również działa/bin/sh
i prawdopodobnie nie potrzebujesz bashism, aby go przeanalizować, po prostu użyj np. Globbing, którycase
zapewnia