Khi tự động hóa một tác vụ, việc kiểm tra nó bằng tay trước là điều hợp lý. Tuy nhiên, sẽ rất hữu ích nếu bất kỳ dữ liệu nào đến stderr có thể được nhận ra ngay lập tức như vậy và có thể phân biệt được với dữ liệu sẽ xuất hiện và có tất cả đầu ra cùng nhau để biết rõ ràng chuỗi sự kiện là gì.
Một liên lạc cuối cùng sẽ là tốt đẹp nếu, khi thoát khỏi chương trình, nó đã in mã trả về của nó.
Tất cả những điều này sẽ hỗ trợ trong việc tự động hóa. Có, tôi có thể lặp lại mã trả về khi chương trình kết thúc và có, tôi có thể chuyển hướng thiết bị xuất chuẩn và thiết bị xuất chuẩn; những gì tôi thực sự thích nó một số shell, script hoặc redirector dễ sử dụng hiển thị stdout màu đen, hiển thị stderr xen kẽ với màu đỏ và in mã thoát ở cuối.
Có một con thú như vậy? [Nếu có vấn đề, tôi đang sử dụng Bash 3.2 trên Mac OS X].
Cập nhật : Xin lỗi đã được vài tháng kể từ khi tôi xem xét điều này. Tôi đã đưa ra một kịch bản thử nghiệm đơn giản:
#!/usr/bin/env python
import sys
print "this is stdout"
print >> sys.stderr, "this is stderr"
print "this is stdout again"
Trong thử nghiệm của tôi (và có lẽ là do cách mọi thứ được đệm), rse và hilite hiển thị mọi thứ từ thiết bị xuất chuẩn và sau đó là mọi thứ từ thiết bị lỗi chuẩn. Phương thức fifo có được thứ tự đúng nhưng dường như làm hỏng mọi thứ theo dòng stderr. ind phàn nàn về các dòng stdin và stderr của tôi, và sau đó đặt đầu ra từ stderr cuối cùng.
Hầu hết các giải pháp này đều khả thi, vì nó không phải là không điển hình khi chỉ có đầu ra cuối cùng đi đến stderr, nhưng vẫn tốt, có một cái gì đó hoạt động tốt hơn một chút.