Есть ли что-то похожее на pipefail для нескольких команд, например, оператор 'try', но в bash. Я хотел бы сделать что-то вроде этого:
echo "trying stuff"
try {
command1
command2
command3
}
И в любой момент, если какая-либо команда не удалась, выйти из нее и повторить ошибку этой команды. Я не хочу делать что-то вроде:
command1
if [ $? -ne 0 ]; then
echo "command1 borked it"
fi
command2
if [ $? -ne 0 ]; then
echo "command2 borked it"
fi
И так далее ... или что-то вроде:
pipefail -o
command1 "arg1" "arg2" | command2 "arg1" "arg2" | command3
Потому что аргументы каждой команды, как я считаю (поправьте меня, если я ошибаюсь), будут мешать друг другу . Эти два метода кажутся мне ужасно многословными и неприятными, поэтому я предлагаю более эффективный метод.