3
ข้อผิดพลาดในการดักจับในการทดแทนคำสั่งโดยใช้“ -o errtrace” (เช่น set -E)
ตามคู่มืออ้างอิงนี้: -E (เช่น -o errtrace) หากตั้งค่ากับดักใด ๆ บน ERR จะได้รับมรดกโดยฟังก์ชั่นของเชลล์การแทนที่คำสั่งและคำสั่งที่ดำเนินการในสภาพแวดล้อม subshell กับดัก ERR โดยปกติจะไม่สืบทอดในกรณีเช่นนี้ อย่างไรก็ตามฉันต้องตีความอย่างผิด ๆ เพราะสิ่งต่อไปนี้ใช้ไม่ได้: #!/usr/bin/env bash # -*- bash -*- set -e -o pipefail -o errtrace -o functrace function boom { echo "err status: $?" exit $? } trap boom ERR echo $( made up name ) …