ในคอนโซลลินุกซ์วิธีไม่ห่อผลลัพธ์


8

ในเทอร์มินัล (linux) บางครั้งมันมีความสำคัญน้อยกว่าที่จะเห็นการสิ้นสุดของบรรทัด เช่น

line1 sddd dd ddd
line2 sdafss ss s
line 3 da aaaa aa 

ค่อนข้างมากกว่า

line1 sddd dd ddd
dd dddd dd
line2 sdafss ss s
s ss
line 3 da aaaa aa 

มีวิธีการ "ตัด" หรือ "ซ่อน" บรรทัดที่ลงท้ายที่ปลายหน้าต่างของเทอร์มินัลในลักษณะเดียวกับ "less -S" แต่สำหรับเอาต์พุตแบบปกติ?

คำตอบ:


18

การสนับสนุนการปิดใช้งานการตัดบรรทัดขึ้นกับเทอร์มินัล ตัวอย่างเช่นหากใช้screenคุณสามารถกดCtrl- A Ctrl- Rเพื่อสลับการตัดบรรทัด

มิฉะนั้นคุณอาจลองsetterm -linewrap offด้วยหรือไม่เพิ่มจำนวนคอลัมน์เทอร์มินัลด้วยstty(ยังไม่ได้ลอง)

เลียนแบบเทอร์มิเช่นฉาบ (ถ้าคุณเชื่อมต่อกับเซิร์ฟเวอร์จากกล่อง Windows) มีการตั้งค่าของตัวเอง

หากเครื่องสนับสนุนรหัสหนี VT , echo -ne "\x1b[7l"จะปิดห่อหน้าจอ ( echo -ne "\x1b[7h"จะเปิดใช้งานได้)

โปรดสังเกตว่าสิ่งที่ใช้งานได้ในเทอร์มินัลหนึ่งอาจไม่ทำงานในที่อื่น - ตัวอย่างเช่นตอนนี้ฉันอยู่ในหน้าต่าง PuTTY บน Linux OpenSuSE 12.3 ด้วย bash โดยใช้screen: ลำดับการควบคุมของมันทำงานได้อย่างสมบูรณ์ในขณะที่รหัส VT และคำไม่ทำงาน บนคอนโซลโหมดข้อความบน SuSE เก่า 11 (ไม่ GUI) ลำดับ VT ทำงาน (อาจscreenจะมากเกินไป) sttyจะถูกละเว้นเห็นได้ชัด


1
จริง ๆ แล้วมันจะ"\x1b[?7l"จบลงใน lowecase L
idelvall
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.