bash 陷阱 EXIT $LINENO 总是 1

bash trap EXIT $LINENO always 1

test.sh

#!/bin/bash
set -e
trap 'echo $LINENO' EXIT
/bin/false

运行

$ ./test.sh
1

如何获取“/bin/false”的实际行号而不是始终为“1”?

您得到 1 是因为您设置了 EXIT 陷阱。尝试:

trap ... ERR