Я хочу, чтобы bash-приложение уничтожало библиотеку в случае сбоя функции библиотеки.
Мне сказали, что set -e
делает это.
lib.sh
#!/bin/bash
function die
{
echo "dying: $1"
exit 1
}
function get_info
{
die "oops an error"
}
app.sh
#!/bin/bash
set -e
source "lib.sh"
echo "info: $(get_info)"
echo "ok"
Запустить его
$> bash app.sh
info: dying: oops an error
ok
die
вышел с 1 , так app.sh
с set -e
должно быть убит тоже, верно?
Почему это не сработало?