При условии, что ваши команды, cmd0
, cmd1
возвращают 0
при успешном запуске и ненулевое значение при сбое, вы можете просто сделать
f() {
for cmd in cmd0 cmd1 cmd2; do
if "$cmd"; then
echo "ok: $message"
return
fi
done
}
См. Пример запускаемых команд, true
,false
с кодами возврата 0
и 1
соответственно,
f() {
for cmd in false true; do
echo "running command $cmd"
if "$cmd"; then
echo "ok: $message"
return
fi
done
}
Запуск,
f
running command false
running command true
ok: