Bash如何捕获内部函数中的错误

时间:2019-03-28 10:40:35

标签: bash trap

这有效:

#! /bin/bash
set -o errexit

trap 'echo Error on line $LINENO' ERR
echo "start"
false

输出为:

start
Error on line 6

在函数中执行相同的代码时,不执行陷阱:

#! /bin/bash
set -o errexit

trap 'echo Error on line $LINENO' ERR

function willFail() {
    false
}

echo "start"
willFail
echo "end"

输出为:

start

当函数内部发生故障时如何执行陷阱?

0 个答案:

没有答案