คุณจะกลับทิศทางของ alt-period ใน Bash ได้อย่างไร?


10

ใน Bash คุณสามารถกดAlt- .เพื่อแทรกอาร์กิวเมนต์สุดท้ายของคำสั่งก่อนหน้า หากคุณกดหลายครั้งมันจะวนไปตามอาร์กิวเมนต์สุดท้ายของคำสั่งทั้งหมดในประวัติของคุณ อย่างไรก็ตามบางครั้งฉันก็กดหลายครั้งเกินไปและฉันต้องการกลับทิศทางของการปั่นจักรยาน เป็นไปได้ไหม

(เช่นหากคุณย้อนกลับการค้นหาด้วยCtrl- rคุณสามารถเปลี่ยนเส้นทางด้วยCtrl- sอะนาล็อกสำหรับAlt- .คืออะไร)

คำตอบ:


11

หากคุณให้ข้อโต้แย้งเชิงลบกับAlt- .มันจะกลับทิศทาง วิธีที่ง่ายที่สุดในการทำเช่นนั้น (ด้วยการโยงคีย์มาตรฐาน) คือAlt- -(เทียบเท่ากับอาร์กิวเมนต์ของ -1)

ดังนั้นหลังจากที่หนึ่งหรือมากกว่าAlt- .กดแป้นกดAlt- -จะทำให้เกิดการต่อไปAlt- .จะไปในทิศทางตรงกันข้าม (เพียงเพิกเฉยต่อกล่องโต้ตอบอาร์กิวเมนต์ที่ปรากฏขึ้นเมื่อคุณกดAlt- -.)


1
ฉันไม่แน่ใจว่าคุณหมายถึงอะไรกันแน่ การกดAlt+ -ลบพรอมต์บรรทัดคำสั่งและแทรก(arg: -1)แทน คำสั่งนั้นไม่เปลี่ยนแปลง
Sparhawk

1
จากนั้นต่อไป alt- (ด้วย -1 หาเรื่อง) จะไปข้างหน้า
rici

เยี่ยมมาก! ฉันได้แก้ไขคำตอบเพื่อให้ชัดเจนขึ้น อะไรalt+ -ทำตรง?
Sparhawk

1
@Sparhawk: ตามที่ฉันได้กล่าวไว้alt -จะสร้างอาร์กิวเมนต์-1สำหรับคำสั่ง readline ถัดไป หรืออย่างแม่นยำมากขึ้นก็จะเริ่มการโต้แย้งเชิงลบดังนั้นalt -, alt` จะผลิตโต้แย้งของ2 -2ในกรณีของalt .เฉพาะสัญญาณของการโต้แย้งที่สำคัญและถ้ามันเป็นเชิงลบalt -ก็เพียงพอแล้ว (ครั้งแรกalt .. จับอาร์กิวเมนต์ที่แตกต่างกันดูคู่มือการทุบตี.)
RICI

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