หากฉันรันคำสั่งที่มีเอาต์พุตจำนวนมากใน tmux แต่ตัดสินใจยกเลิกด้วย Ctrl-C จะมีความล่าช้า 10-15 วินาทีก่อนที่จะหยุด อย่างไรก็ตามถ้าฉันทำสิ่งเดียวกันนอก tmux มันจะหยุดทันที ทำไมจึงเป็นเช่นนี้และสามารถแก้ไขได้?
ในทางปฏิบัติปัญหานี้เกิดขึ้นเมื่อฉันทำgrep -R
ในไดเรกทอรีขนาดใหญ่และการค้นหาของฉันไม่ จำกัด เพียงพอ วิธีแก้ปัญหาคือไปป์ไลน์ผลลัพธ์wc
ก่อนเพื่อให้แน่ใจว่าผลลัพธ์ไม่ยาวเกินไป แต่นั่นเป็นอีกขั้นตอนหนึ่งที่ฉันต้องการหลีกเลี่ยง
หมายเหตุ:
- สิ่งนี้มีพฤติกรรมเหมือนกันใน Gnome Terminal, uxterm, st และเทอร์มินัลเสมือนธรรมดา (เช่น ctrl-alt-f2) แต่การหน่วงเวลานั้นน้อยกว่าในเทอร์มินัลเสมือนธรรมดา
- ฉันไม่ใช่คนเดียว: http://www.mail-archive.com/tmux-users@lists.sourceforge.net/msg01569.html
- การหน่วงเวลานานขึ้นหากหน้าต่างเทอร์มินัลของฉันใหญ่ขึ้น สำหรับเทอร์มินัลแบบเต็มหน้าจอจะใช้เวลาประมาณ 15 วินาทีในการหยุด
grep -R
(ไม่มีข้อโต้แย้งอื่น ๆ ) ในไดเรกทอรีหลักที่รก สำหรับเทอร์มินัลอักขระ 80 × 25 จะหยุดเกือบทันที
grep -R "a" ~/
(ไม่ได้เขียนไปยังแฟ้ม) ... และแล้วyes | nl | cut -f1 | head -9999999 > ~/file
cat ~/file