ทำซ้ำการพิมพ์ใน bash OSX


9

ในทุบตีบน OSX ฉันสามารถทำได้ctrl-_เพื่อยกเลิกสิ่งที่ฉันพิมพ์ล่าสุด มีคำสั่งทำซ้ำที่สอดคล้องกันหรือไม่


2
ฉันดู man page ของ readline อย่างรวดเร็วและไม่พบอะไรเลยเกี่ยวกับคำสั่ง redo / short-cut readline (3) เป็นห้องสมุดที่รับผิดชอบโดยทางลัดและฟีเจอร์ประวัติศาสตร์ในการทุบตี หากคุณสนใจที่คุณสามารถดูได้ที่นี่คู่มือunixhelp.ed.ac.uk/CGI/man-cgi?readline+3 มีทางลัดค่าเริ่มต้นทั้งหมดที่ระบุไว้ในหน้าคนนี้
บรูโน่โคอิมบรา

@BrunoCoimbra: ดูเหมือนว่าอาจจะไม่มีอะไร แต่ขอบคุณสำหรับการอ้างอิง
amindfv

คำตอบ:


4

ctrl-yเป็นคำสั่ง Readline 'yank' ซึ่งดึงบัฟเฟอร์การทำลาย ctrl-uฆ่าจากจุดถึงจุดเริ่มต้นของบรรทัด (คล้ายกับ OSX / bash ctrl-_ซึ่งล้างทั้งบรรทัด) Emacs คล้าย Readline ถูกเปิดใช้งานใน bash และเซตย่อยถูกเปิดใช้งานในสถานที่อื่น ๆ (แถบค้นหาเบราว์เซอร์ ฯลฯ )

  • ctrl-u ฆ่าตั้งแต่ต้นบรรทัดจนถึงจุดแทรก
  • ctrl-k ฆ่าจากจุดแทรกไปยังจุดสิ้นสุดของบรรทัด
  • ctrl-w ฆ่าคำก่อนหน้า (และเสริมเพื่อฆ่าบัฟเฟอร์)
  • ctrl-y ดึงเนื้อหาของบัฟเฟอร์การฆ่า

1
ฉันได้รับพฤติกรรมที่แตกต่าง (ใน terminal ใน OS X และ XTerm และ Emacs ใน Fedora) - ctrl-_เลิกทำการกระทำสิ่งที่ผ่านมาได้และยังctrl-yดึงข้อความฆ่าใด ๆ ctrl-uที่ไม่เพียงกับ ถึงกระนั้นฉันไม่เคยได้ยินมาctrl-yก่อน - ขอบคุณ!
amindfv

แก้ไขคำตอบของฉันเพื่อพูดว่า 'Readline' แทนที่จะเป็น 'Emacs' แม้ว่าจะมีการแชร์การเชื่อมโยงคีย์จำนวนมากรวมถึงเพื่อขยายคำจำกัดความของการฆ่าบัฟเฟอร์ คำสั่ง Readline kill-whole-lineซึ่งทำเช่นเดียวกันกับของคุณctrl-_นั้นถูกยกเลิกการเชื่อมต่อโดยค่าเริ่มต้น - ฉันมักจะสงสัยว่ามีคำสั่ง kill-whole-line หรือไม่ ฉันใช้ctrl-a-k( จุดเริ่มต้นของสายฆ่า ) เพื่อฆ่าทั้งบรรทัด
idoimaging

7
สำหรับฉันctrl-_ไม่ได้ฆ่าทั้งบรรทัด แต่ - มันเป็นคำสั่งยกเลิก
amindfv

4
และมันก็ไม่ได้ตอบคำถามเช่นกัน
suzanshakya
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.