Trong dự án của tôi, tôi có đoạn trích sau:
local output="$(bash "${1##*/}")"
echo "$?"
Điều này luôn luôn in số 0 local, tuy nhiên, loại bỏ locallàm cho $?biến hoạt động chính xác: đó là giả sử mã thoát khỏi lớp con.
Câu hỏi của tôi là: làm thế nào tôi có thể giữ biến này cục bộ trong khi cũng nắm bắt được giá trị thoát?
shellchecksẽ không chỉ nắm bắt được vấn đề này mà còn đề xuất giải pháp tại unix.stackexchange.com/a/281749/24718 !