Розглянемо наступний код
зовнішній-скоп.ш
#!/bin/bash
set -e
source inner-scope.sh
echo $(inner)
echo "I thought I would've died :("
inner-scope.sh
#!/bin/bash
function inner() { echo "winner"; return 1; }
Я намагаюся дійти outer-scope.sh
до виходу, коли дзвінок inner()
не вдається. Оскільки $()
виклик підрозділу, цього не відбувається.
Як інакше я отримую вихід функції, зберігаючи той факт, що функція може вийти з ненульовим кодом виходу?