+--------------------+ +------+ +----------+
| stdout |·······→| less |——————→| |
| somecommand | +------+ | terminal |
| stderr |——————————————————————→| |
+--------------------+ +----------+
ถ้าsomecommand
พิมพ์ข้อความข้อผิดพลาดมาตรฐานเดียวแล้วเมื่อคุณเรียกใช้somecommand | less
, somecommand
และless
มีทั้งการแสดงไปยังสถานี เอาต์พุตของคำสั่งบน stderr จะไม่ไปยังless
จะไปที่เทอร์มินัลโดยตรงเนื่องจากไม่ได้เปลี่ยนเส้นทาง ก่อนการส่งออกของการsomecommand
เลื่อนโดยในขณะที่เริ่มต้นน้อยและแสดงให้เห็นบรรทัดของมัน จากนั้นเมื่อsomecommand
เสร็จสิ้นการแจ้งให้ทราบน้อยว่าอินพุตเสร็จสมบูรณ์ (เนื่องจากปิดท่อ) คุณอาจต้องการทดลองใช้บิต: เรียกใช้
{ sleep 1; somecommand; sleep 1; } | { sleep 0; less; }
และความแปรผันของเวลาพักเครื่องเพื่อให้ได้somecommand
ผลผลิตก่อนหรือหลังน้อยพร้อมและดูว่าจะเกิดอะไรขึ้นเมื่อปิดท่อ