รับเส้นทางของไดเรกทอรีหรือไฟล์ที่มีอยู่แล้ววางที่ตำแหน่งเคอร์เซอร์


0

ฉันใช้vimเพื่อแก้ไขไฟล์กำหนดค่าบนเซิร์ฟเวอร์ linux ที่เพิ่งสร้างใหม่ ในกล่องเหล่านี้ฉันมีการvimตั้งค่าเริ่มต้น(RHEL 6.2)

ในขณะที่แก้ไขไฟล์เหล่านี้ฉันต้องการหลีกเลี่ยงไดเรกทอรีที่เสียนิ้วและเส้นทางไฟล์ทุกครั้งที่ทำได้

สมมติว่าฉันfoo.confเปิดไฟล์ในเครื่องมือแก้ไขเนื้อหาที่ฉันเพิ่งป้อน:

myfoo =

เคอร์เซอร์อยู่ทางด้านขวาของ=ไฟล์นี้ ฉันต้องการใช้เสียงเรียกเข้าเพื่อใส่ชื่อของไดเรกทอรีที่นี่ สมมติว่าเป็นไดเรกทอรีที่มีอยู่: /etc/fooและฉันขี้เกียจและต้องการใช้การกดแป้นบางครั้งให้มากที่สุด

ได้เป็นกลุ่มจะทำเช่นนี้?

ฉันไม่สามารถเพิ่มปลั๊กอินใด ๆ ให้เป็นกลุ่มได้ฉันไม่สามารถเปลี่ยนการตั้งค่าได้

คำตอบ:


1

อ่านผลลัพธ์จากlsและรูปแบบดังนี้:

  1. ESC
  2. :r!ls -d /etc/fTabEnter
  3. <เลื่อนหนึ่งบรรทัดขึ้นไปเช่นKหรือ>
  4. Shift+J
  5. X

คำอธิบาย:

  1. ไปที่โหมด "command" (โหมด "ปกติ" ทางเทคนิค)
  2. :rอ่านอินพุตจากซอร์สและแทรกหลังบรรทัดปัจจุบัน!ตีความคำสั่งต่อไปนี้เป็นคำสั่งเชลล์และเรียกใช้งาน
  3. ขึ้น.
  4. J เชื่อมต่อกับบรรทัดถัดไปและยังแทรกช่องว่างระหว่าง
  5. ลบช่องว่างที่แทรกพิเศษ

ยอดเยี่ยมสิ่งที่ฉันต้องการ! ขอบคุณมาก.
John Dibling

Shift+x? นั่นไม่ได้มาตรฐานใช่มั้ย มันไม่ทำงานที่นี่ ฉันจะทำ:r!echo /etc/f <tab completion> <Enter> kJx
แดเนียลแอนเดอร์สัน

ขออภัยที่ฉันแก้ไขคำตอบที่มีการพิมพ์ผิดใน<kbd>ไวยากรณ์
Bram

อ่านั่นสมเหตุสมผล :-) มันเหมือนกับเวอร์ชั่นของฉันechoทุกประการยกเว้นเล่ห์อุบายที่ไม่มีข้อ จำกัด
Daniel Andersson

1

ใช้ omnicompletion: กด<C-x><C-f>เลือกเลือก<CR>ทำซ้ำ ...


เยี่ยมเลยแม้ว่าจะใช้งานได้กับไฟล์ใน dir ปัจจุบันเท่านั้นหรือ ฉันต้องการตรวจสอบเรื่องนี้ มีหน้าคำแนะนำเป็นกลุ่มในนี้เช่นกัน
Bram

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