Tôi có tập lệnh bash trong đó tôi kiểm tra mã thoát của lệnh chạy cuối cùng bằng cách sử dụng $? biến nhưng bây giờ tôi đang thực hiện một chương trình C (từ kịch bản đó) mà trả về 0 nếu chương trình được thực hiện thành công. Có cách nào tôi có thể bắt giá trị trả về của chương trình C từ trong kịch bản bash của tôi?Kiểm tra giá trị trả về của chương trình C trong tập lệnh bash?
Tôi tin rằng các lệnh khác nhau như awk, sed, vv được viết bằng C. Làm cách nào để sử dụng $? để lưu trữ mã thoát của chúng trong đó? Làm thế nào tôi có thể làm cho chương trình C của tôi để lưu trữ mã thoát của nó trong $ ??
Tôi hy vọng câu hỏi của tôi là rõ ràng.
Trạng thái thoát được giới hạn ở chỉ 8 bit, vì vậy chỉ 8 bit thấp nhất của những gì chương trình trả về sẽ kết thúc được lưu trong $? –
@Chris Dodd - POSIX giới hạn giá trị trả lại từ 0 - 255, do đó, dung lượng 8 bit không phải là vấn đề ở đó, đó là tối ưu hóa. –