ปัญหา
ฉันรันคำสั่งที่ให้เอาท์พุตจำนวนมากของข้อมูลผ่าน SSH ตัวอย่างเช่นฉันเพิ่มข้อมูลการดีบักภายในลูปที่ดำเนินการเป็นล้านครั้งหรือเพียงแค่วิ่งcat /dev/urandom
เพื่อเตะ
ข้อมูลถูกเทอร์มินัล
ฉันต้องการยุติคำสั่งโดยเร็วและแก้ไขโปรแกรมของฉัน ฉันไม่สนใจสิ่งที่จะพิมพ์ ตอนนี้สิ่งที่ผมกดCtrl+ Cที่เร็วที่สุด (ในตัวอย่างข้างต้นผมกดมันทันทีหลังจากใช้คำสั่ง) แต่ก็ยังคงต้องใช้เวลาในการพิมพ์ข้อมูลทั้งหมดที่ฉันไม่จำเป็นต้อง
สิ่งที่ฉันได้ลอง
ฉันลองกดCtrl+ Cอย่างหนักเพื่อให้ได้ผลลัพธ์ที่ตลกเมื่อท้ายสุดเทอร์มินัล:
OUTPUT HERE^C
rr-@burza:~/xor$ ^C
rr-@burza:~/xor$ ^C
rr-@burza:~/xor$ ^C
^C^C
^C^C^C^C^C^C^C^C^C^C^C
^C^C^C^C^C^C^C^C^C^C
^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C
^C^C^C^C^C^C^C
^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C
^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C
^C^C^C^C^C^C^C^C^C^C^C^C^C
rr-@burza:~/xor$ ^C
rr-@burza:~/xor$ ^C
rr-@burza:~/xor$ ^C
rr-@burza:~/xor$ ^C
rr-@burza:~/xor$ ^C
rr-@burza:~/xor$ ^C
rr-@burza:~/xor$ ^C
rr-@burza:~/xor$ ^C
rr-@burza:~/xor$ ^C
ฉันยังอ่านเกี่ยวกับCtrl+ Sซึ่งเห็นได้ชัดว่าใช้เพื่อบอกเทอร์มินัล "หยุดส่งออกฉันต้องทัน"แต่เห็นได้ชัดว่าไม่ได้ทำอะไรเลย
รายละเอียดเบ็ดเตล็ด
ฉันไม่ต้องการเปลี่ยนคำสั่งที่ฉันเรียกใช้เพื่อที่ฉันจะสามารถช่วยเหลือตัวเองได้ในทุกสถานการณ์แม้ว่าฉันจะจำไม่ได้ว่าโปรแกรมที่ฉันรันอาจจบลงเช่นนั้น
ลูกค้า SSH ของฉันทำงานบน Cygwin ( CYGWIN_NT-6.1-WOW64 luna 1.7.30(0.272/5/3) 2014-05-23 10:36 i686 Cygwin
) ใน MinTTY xterm-256color
กับชุดประเภทอาคารเพื่อ
เซิร์ฟเวอร์ SSH ทำงานบน Debian ( Linux burza 3.2.0-4-686-pae #1 SMP Debian 3.2.51-1 i686 i686 i686 GNU/Linux
)
-j
ตัวเลือกเพื่อเปิดใช้งานการเลื่อนแบบข้าม ปัญหาพื้นฐานคือรีโมตสามารถส่งข้อมูลได้เร็วกว่าหน้าต่างเทอร์มินัลที่สามารถแสดงได้ - โดยค่าเริ่มต้นจะต้อง bitblt เนื้อหาของหน้าต่างทุกครั้งที่พิมพ์บรรทัดใหม่ ข้อมูลจำนวนมากสามารถถูกบัฟเฟอร์ในเวลาที่ Ctrl-C ของคุณได้รับจากระบบรีโมตและโปรแกรมเทอร์มินัลของคุณจะพยายามแสดงข้อมูลทั้งหมด
.bashrc
?
Ctrl-O
ซึ่งหมายความว่า "ยกเลิกเอาต์พุตใด ๆ ที่เขียนไปยังเทอร์มินัลนี้"