Câu trả lời:
Hãy thử xem:
command || true
Từ man bash
:
Shell không thoát nếu lệnh bị lỗi là một phần của danh sách lệnh ngay sau một từ khóa hoặc cho đến khi từ khóa, một phần của kiểm tra theo các từ dành riêng if hoặc elif, một phần của bất kỳ lệnh nào được thực thi trong danh sách && hoặc except ngoại trừ lệnh theo lệnh cuối cùng && hoặc ⎪⎪, bất kỳ lệnh nào trong đường ống ngoại trừ lệnh cuối cùng hoặc nếu giá trị trả về của lệnh đang được đảo ngược với !.
Hãy thử (executable ; exit 0)
hoặc thay thế gói nó trong một tập lệnh shell luôn thoát 0.
(cd foo; exit 0)
thành công, bạn sẽ không kết thúc trong "foo" sau đó vì cwd của bạn được trả về cho bạn trước đó. Tuy nhiên, cd foo || true
sẽ khiến bạn rơi vào "foo" nếu thành công.