วิธีเปิดไฟล์สองไฟล์ที่แตกต่างกันโดยใช้เครื่องมือแก้ไข vi


20

ฉันมีสองไฟล์ในสถานที่ต่างกันและฉันต้องการเปิดทั้งสองไฟล์ด้วยviคำสั่งเดียวกัน ฉันจะทำมันได้อย่างไร

  • ตำแหน่งไฟล์ 1: /home/rs/rest.pl
  • ตำแหน่งไฟล์ 2: /home/dev/grd.pl

4
สำหรับสิ่งที่คุ้มค่ามีเว็บไซต์เบต้าสำหรับ Vi / Vim: vi.stackexchange.com
JPhi1618

คำตอบ:


25

ตามที่บันทึกไว้โดย Zannaให้ใช้อาร์กิวเมนต์หลายตัวกับ Vi อย่างไรก็ตามค่าเริ่มต้น Vi (m) จะไม่แสดงไฟล์พร้อมกัน พวกเขากำลังโหลดลงในบัฟเฟอร์และและคุณสามารถสลับไปถัดไป (หรือก่อนหน้า) บัฟเฟอร์ใช้และ:bn :bpหากคุณต้องการดูไฟล์ในเวลาเดียวกันให้ใช้ windows (splits):

vim /some/file1 /some/file2 -o # horizontal split
vim /some/file1 /some/file2 -O # vertical split

หรือแท็บ:

vim /some/file1 /some/file2 -p # Open up to 10 files in tabs

อย่างไรก็ตามบัฟเฟอร์เป็นสิ่งที่ Vim ใช้จริงในการจัดการไฟล์แท็บและหน้าต่างเป็นเพียงวิธีการจัดเรียงภาพ ทำความคุ้นเคยกับการใช้บัฟเฟอร์โดยตรงแทนที่จะใช้หลายหน้าต่างหรือหลายแท็บ

(ตัวเลือกเหล่านี้ยังใช้กับ Ubuntu viซึ่งเป็นvim.tinyค่าเริ่มต้นvim-tinyสร้างด้วย+windowsดังนั้นจึงเปิดใช้งานแท็บและหน้าต่าง)

ดูสิ่งนี้ด้วย:


12

คุณสามารถเรียก call vi (หรือ vim) ด้วยอาร์กิวเมนต์หลายตัว

vi /home/rs/rest.pl /home/dev/grd.pl

คุณอยู่ในไฟล์แรก แต่ทั้งคู่เปิดอยู่ คุณสามารถสลับระหว่างพวกเขาโดยใช้:n(ไฟล์ถัดไป) และ:N(ไฟล์สุดท้าย) (กดescเพื่อออกจากโหมดแทรกหากจำเป็น)

ฉันสังเกตเห็นว่าไฟล์เหล่านั้นอยู่ในไดเรกทอรีหลักของผู้ใช้ที่แตกต่างกันดังนั้นคุณอาจไม่ได้รับอนุญาตในฐานะผู้ใช้ปกติ sudoแก้ไขไฟล์ที่ผู้ใช้ของคุณไม่มีสิทธิ์เพียงพอในการแก้ไขคุณจะต้อง คุณสามารถเรียกใช้คำสั่งด้วยการsudoเริ่มต้นหรือใช้เคล็ดลับเมื่อบันทึกไฟล์:w !sudo tee %


2
+1 สำหรับ:w !sudo tee %เคล็ดลับ!
nalzok

1

หากคุณต้องการดูไฟล์ทั้งสองในแนวนอนให้ใช้

vi -o /home/rs/rest.pl /home/dev/grd.pl

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

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