ฉันมีสองไฟล์ในสถานที่ต่างกันและฉันต้องการเปิดทั้งสองไฟล์ด้วยvi
คำสั่งเดียวกัน ฉันจะทำมันได้อย่างไร
- ตำแหน่งไฟล์ 1:
/home/rs/rest.pl
- ตำแหน่งไฟล์ 2:
/home/dev/grd.pl
ฉันมีสองไฟล์ในสถานที่ต่างกันและฉันต้องการเปิดทั้งสองไฟล์ด้วยvi
คำสั่งเดียวกัน ฉันจะทำมันได้อย่างไร
/home/rs/rest.pl
/home/dev/grd.pl
คำตอบ:
ตามที่บันทึกไว้โดย 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
ดังนั้นจึงเปิดใช้งานแท็บและหน้าต่าง)
ดูสิ่งนี้ด้วย:
คุณสามารถเรียก call vi (หรือ vim) ด้วยอาร์กิวเมนต์หลายตัว
vi /home/rs/rest.pl /home/dev/grd.pl
คุณอยู่ในไฟล์แรก แต่ทั้งคู่เปิดอยู่ คุณสามารถสลับระหว่างพวกเขาโดยใช้:n
(ไฟล์ถัดไป) และ:N
(ไฟล์สุดท้าย) (กดescเพื่อออกจากโหมดแทรกหากจำเป็น)
ฉันสังเกตเห็นว่าไฟล์เหล่านั้นอยู่ในไดเรกทอรีหลักของผู้ใช้ที่แตกต่างกันดังนั้นคุณอาจไม่ได้รับอนุญาตในฐานะผู้ใช้ปกติ sudo
แก้ไขไฟล์ที่ผู้ใช้ของคุณไม่มีสิทธิ์เพียงพอในการแก้ไขคุณจะต้อง คุณสามารถเรียกใช้คำสั่งด้วยการsudo
เริ่มต้นหรือใช้เคล็ดลับเมื่อบันทึกไฟล์:w !sudo tee %
:w !sudo tee %
เคล็ดลับ!