我注意到bash中带有-e标志的奇怪行为。专门在此脚本中:
#!/bin/bash
set -e -E -o pipefail
function test() {
local abc=$(false)
}
function test2() {
abc=$(false)
}
echo 1
test
echo 2
test2
echo 3
运行脚本时,我得到以下信息:
$ ./test.sh
1
2
(1) $
为什么第一个作业有效,而第二个作业却无效? (行为与zsh相同)