Tôi đang cố gắng để chạy 3 lệnh song song trong vỏ bash:Bash & (và) hành
$ (first command) & (second command) & (third command) & wait
Vấn đề ở đây là nếu first command
thất bại, ví dụ, mã thoát là 0
(I đoán vì wait
thành công).
Hành vi mong muốn là nếu một trong các lệnh thất bại, mã thoát sẽ không khác (và lý tưởng là các lệnh đang chạy khác sẽ bị dừng).
Làm cách nào để đạt được điều này?
Xin lưu ý rằng tôi muốn chạy các lệnh song song!
Tôi nghĩ rằng sẽ hoạt động theo điều khoản của mã trả về, nhưng sẽ không thực thi các lệnh song song. – jcollado
Đồng ý và cũng đã ghi chú trong câu trả lời của tôi. Tuy nhiên, nếu các lệnh đang chạy song song thì bạn không thể kiểm tra mã thoát vì lệnh trước đó đã không thoát khi lệnh thứ hai chạy. – anubhava
Hạn chế chính ở đây là chạy các lệnh ** song song **. Tôi không ngại thay thế một lớp lót này bằng kịch bản bash phức tạp hơn, miễn là các lệnh sẽ chạy song song và mã thoát sẽ không khác trong trường hợp lỗi. –