Tôi đang chạy tập lệnh shell chuyển dữ liệu từ quy trình này sang quy trình khác
process_a | process_b
Có ai biết một cách để tìm hiểu có bao nhiêu byte được truyền qua giữa hai chương trình không? Giải pháp duy nhất tôi có thể nghĩ đến lúc này là viết một chương trình c nhỏ đọc từ stdin, ghi vào thiết bị xuất chuẩn và đếm tất cả dữ liệu được truyền, lưu trữ số đếm trong một biến môi trường, như:
process_a | count_bytes | process_b
Có ai có một giải pháp gọn gàng hơn?
exec
và chỉ xuất ra tệp trực tiếp?input-command | dd 2>~/fred | output-command