PuTTY: เชื่อมต่อกับเซิร์ฟเวอร์ Ubuntu บางครั้งบางครั้งหยุดการขึ้นบรรทัดใหม่เมื่อกด Enter


16

ฉันใช้ PuTTY เพื่อ SSH ไปยังเซิร์ฟเวอร์ Ubuntu 14.04.4 LTS x64 การกดคีย์ ENTERจะทำให้เทอร์มินัลไปที่บรรทัดใหม่ อย่างไรก็ตามในบางครั้งบางโปรแกรมจะแสดงผลข้อความและหลังจากนั้นการกดปุ่ม ENTERจะไม่ทำให้เทอร์มินัลไปยังบรรทัดใหม่อีกต่อไป (ดูการสาธิตด้านล่าง)

ป้อนคำอธิบายรูปภาพที่นี่

มีวิธีใดที่จะป้องกันได้หรืออย่างน้อยเมื่อกดปุ่ม ENTERจะไม่ทำให้ขั้วต่อไปยังบรรทัดใหม่อีกต่อไปมีการรีเซ็ตเทอร์มินัลเพื่อให้ENTER เทอร์มินัลไปขึ้นบรรทัดใหม่อีกครั้งหรือไม่


2
Franck - ที่เกิดขึ้นเมื่อกดCtrl+Cแล้วพิมพ์และกดreset Enterแจ้งให้เราทราบหากช่วยได้
Pimp Juice IT

@Facebook ขอบคุณพิมพ์resetและกดEnterทำงาน!
Franck Dernoncourt

นอกจากนี้ยังยื่นรายงานข้อผิดพลาดกับที่glancesโปรแกรมสำหรับการออกจากอาคารผู้โดยสารในรัฐที่ไม่ดีหลังจากที่บุก;)
marcelm

โดยบังเอิญคำถามที่คล้ายกันเพิ่งเปิดการแลกเปลี่ยน Unix & Linux กอง: unix.stackexchange.com/questions/398291
JdeBP

พิจารณาใช้ cygwin และติดตั้ง Terminal สีโป๊วแย่มาก ตัวอย่างเช่น mc แสดงไม่ถูกต้องและไม่อนุญาตให้คุณเลือกไฟล์ที่มีกะ
JorgeeFG

คำตอบ:


25

คุณสามารถใช้คำสั่งรีเซ็ตโดยการพิมพ์resetจากนั้นกดEnterเมื่อมันเกิดขึ้นเพื่อรีเซ็ตเครื่องดังนั้นมันจะไปที่บรรทัดใหม่เมื่อกดEnter อีกครั้ง

คำสั่ง

ubuntu@db200krctc:~$ ubuntu@db200krctc:~$ ubuntu@db200krctc:~$ ubuntu@db200krctc:~$
ubuntu@db200krctc:~$ reset
ubuntu@db200krctc:~$
ubuntu@db200krctc:~$
ubuntu@db200krctc:~$

แหล่งข้อมูลเพิ่มเติม

  • รีเซ็ต

    เมื่อเรียกใช้ใหม่ ในฐานะรีเซ็ตtsetจะตั้งค่าโหมดสุกและโหมด echo ปิดโหมด cbreak และ raw เปิดการแปลบรรทัดใหม่และรีเซ็ตอักขระพิเศษที่ไม่ได้ตั้งค่าใด ๆ กลับไปเป็นค่าเริ่มต้นก่อนที่จะทำการเริ่มต้นเทอร์มินัล สิ่งนี้มีประโยชน์หลังจากที่โปรแกรมออกจากขั้วในสถานะที่ผิดปกติ


16

resetคำสั่งไม่มากกว่าที่คุณต้องการจริงๆที่นี่ในกรณีนี้โดยเฉพาะอย่างยิ่งเป็นปัญหาของคุณเป็นเพียงที่สะท้อนได้ถูกปิด resetจริง ๆ แล้วปล่อยลำดับการควบคุมเพื่อรีเซ็ตเทอร์มินัลเองเมื่อทุกสิ่งที่คุณต้องการจริง ๆก็คือการกำหนดค่าสายวินัยใหม่ภายในเคอร์เนลระบบปฏิบัติการเปิดโหมด echo อีกครั้งและไม่สัมผัสกับเทอร์มินัลเลย

เพื่อที่จะใช้:

มีสติ
หรือแม้แต่เพียงแค่:

เสียงสะท้อน

resetจัดการกับสถานการณ์เมื่อจริง ๆ แล้วเป็นสถานะของเทอร์มินัลที่ต้องการรีเซ็ตและไม่ใช่เพียงแค่สถานะของวินัยของสาย เช่น tabstops ถูกลบเทอร์มินัลจะถูกเปลี่ยนเป็นบัฟเฟอร์หน้าจอทางเลือกชุดอักขระ 8 บิตที่ไม่สะดวกได้ถูกสลับในและอื่น ๆ

อ่านเพิ่มเติม


มีระเบียบวินัยของบรรทัดในเคอร์เนลอย่างไร คำตอบนี้ฟังดูเหมาะสมกับฉันยกเว้นส่วนที่ฉันสงสัยมาก
Stephen Ostermiller

@StephenOstermiller: มันจะอยู่ที่ไหนอีก?
psmears

3
ไลน์ไลน์เป็นหนึ่งในเคอร์เนลไดรเวอร์ตัวแรกที่เคยกำหนดค่าได้จาก userspace, Unix sttyและgtty(เรียกใช้และตั้งค่า) การเรียกใช้ระบบนานก่อนที่พวกเขาจะถูกแทนที่ด้วยการioctlเรียกทั่วไปมากขึ้น
Guntram Blohm สนับสนุนโมนิก้า

6
มันสมเหตุสมผลแล้วเพราะมันเป็นอิสระจากเชลล์ดังนั้นมันจะทำงานในโปรแกรมอื่นด้วย และในวันแรก ๆ ไม่มีโปรแกรมเทอร์มินัลให้พูด - คอนโซลแบบอนุกรมจะโต้ตอบโดยตรงกับเคอร์เนล (และยังสามารถทำได้)
Muzer

1
เพื่อชี้แจง: ในสมัยก่อนด้านหลังของ / dev / tty เป็นพอร์ตอนุกรมจริง วินัยในสายถูกจัดการโดยเคอร์เนลไดรเวอร์ tty ด้วยเซสชันเทอร์มินัลปลอมหรือเซสชันเครือข่ายเทอร์มินัล / dev / tty เป็น psuedo-terminal และด้านหลังไม่ใช่พอร์ตอนุกรมทางกายภาพ แต่อุปกรณ์หลักอื่นของ pseduo ซึ่งข้อมูลเซสชันถูกอ่าน / เขียนและป้อนไปยังซ็อกเก็ตเครือข่ายหรือ เทอร์มินัลอีมูเลเตอร์ ด้าน / dev / tty ของเทอร์มินัลหลอกทำหน้าที่เหมือนกับด้าน / dev / tty ของพอร์ตอนุกรมจริง en.wikipedia.org/wiki/Pseudoterminal
Sam Liddicott
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.