Với GNU tarbạn chỉ có thể làm:
tar --totals -c . >/dev/null
... sẽ hiển thị đầu ra như ...
Total bytes written: 5990400 (5.8MiB, 5.5GiB/s)
... trên thiết bị lỗi thời. Tương tự, với bất kỳ tar (hoặc luồng) nào bạn có thể sử dụng ddđể phân phối báo cáo về số byte. Điều này có thể hoặc không thích hợp hơn wc, nhưng ddmặc định là kích thước khối 512 byte - giống hệt với tarkích thước khối. Nếu PIPE_BUF của hệ thống của bạn đủ lớn, bạn thậm chí có thể mở rộng ddkích thước khối để phù hợp với tarkích thước bản ghi của nó - là 20 khối hoặc 10240 byte. Như thế này:
tar -c . | dd bs=bx20 >/dev/null
585+0 records in
585+0 records out
5990400 bytes (6.0 MB) copied, 0.0085661 s, 699 MB/s
Điều này có thể hoặc không thể cung cấp một giải pháp hiệu quả hơn wc.
Trong cả hai ddvà tarsử dụng-trường hợp, bạn không cần phải thực sự định đoạt của con suối, mặc dù. Tôi chuyển hướng đến /dev/nullphía trên - nhưng tôi có thể dễ dàng chuyển hướng đến một số tệp và vẫn nhận được báo cáo về kích thước của nó tại thời điểm nó được viết.
               
              
wcthừa-thì bạn cũng không cầncutlệnh tiếp theo .