ฉันพยายามเปิดไฟล์โดยใช้ .swp vi
และcat
แต่มันแสดงขยะ
emacs
? (หรือประเสริฐ, nano, ed, ฯลฯ )
ฉันพยายามเปิดไฟล์โดยใช้ .swp vi
และcat
แต่มันแสดงขยะ
emacs
? (หรือประเสริฐ, nano, ed, ฯลฯ )
คำตอบ:
vim -r .swp
นี่จะเข้าสู่โหมดการกู้คืนและให้ข้อมูลเพิ่มเติมแก่คุณ ฉันคิดว่านี่คือสิ่งที่คุณต้องการ
.swX
ไฟล์จะถูกทิ้งไว้ข้างหลังหากเซสชั่นที่มีไฟล์ที่ไม่ได้บันทึกถูกฆ่า / ล่ม / สิ่งอื่นที่ไม่ดีเกิดขึ้น ซึ่งจะแสดงในช่วงเวลาที่บัฟเฟอร์ที่ไม่ได้บันทึกถูกเปิดในเซสชัน Vim vim -r
อ่านไฟล์ชั่วคราวเหล่านี้และสร้างเนื้อหาใหม่ :w newfilename
หลังจากที่คุณได้กู้คืนมันเพียงแค่บันทึกเป็นปกติเช่น
คุณไม่จำเป็นต้องมีไฟล์ต้นฉบับเพื่อกู้คืนไฟล์. swp เพียงแค่เปิดไฟล์ราวกับว่ามันมีอยู่ เป็นกลุ่มจะมองหาไฟล์ที่มีนามสกุล. swp และเสนอให้กู้คืนได้
เช่น:
$ ls -a
. .. .test.txt.swp
$ vim test.txt
[...]
Swap file ".test.txt.swp" already exists!
[O]pen Read-Only, (E)dit anyway, (R)ecover, (D)elete it, (Q)uit, (A)bort:
เพียงกด R เพื่อกู้คืนและ: wq ไฟล์
แก้ไข: โปรดทราบว่าไฟล์. swp มีการเปลี่ยนแปลงที่ทำกับไฟล์เท่านั้น (ดูความคิดเห็น) ซึ่งหมายความว่าคุณจะต้องดึงสำเนาไฟล์ล่าสุดจากการสำรองข้อมูลจากนั้นใช้กลุ่มเพื่อเรียกคืนการเปลี่ยนแปลงล่าสุด หากคุณไม่มีสำเนาสำรองของไฟล์แสดงว่าคุณโชคไม่ดี
The original file is no longer needed for recovery.
:preserve
และ:set cpoptions=...&
ปล่อยไฟล์. swp และ. swo ไว้ในไดเรกทอรีและเสนอให้กู้คืนจากทั้งคู่ การใช้vim -r <file>
คุณสามารถเลือกระหว่าง. swp และ. swo การแก้ไขเพิ่มเติมจะสร้าง. swn, .swm ฯลฯ ซึ่งดูเหมือนจะเป็นผลรวมของการแลกเปลี่ยนบางส่วนจนถึงจุดนั้น คุณสามารถเปลี่ยนกลับไปเป็นเวอร์ชั่นที่คุณชื่นชอบและแก้ไข (~ = ทางแยก) หรือบันทึก (~ = ที่ซ่อน) ในที่สุดคุณสามารถ tar ไฟล์ swap, daemonize สำรองของพวกเขา ฯลฯ ฉันอาจจะผิดเกี่ยวกับรายละเอียดเมื่อมันมาถึงไฟล์ขนาดใหญ่ - ฉันไม่แน่ใจว่าวิธีที่มีผลต่อไฟล์ swap พิเศษ - ดูด้านล่าง
เปิดไฟล์ต้นฉบับโดยใช้กลุ่มและเลือกตัวเลือกการกู้คืน
1 เปิดไฟล์ swap .file.swp
ในvim
2 :recover
จะกู้คืนไฟล์ของคุณ
หลังจากอ่านความคิดเห็นของ Vegar Westerlund และ Heptite แล้วฉันต้องการทราบว่าจุดใดบ้างที่ไฟล์ต้องการ (หรือสำเนาสำรอง) เพื่อกู้คืนจากไฟล์. swp นี่คือสิ่งที่ทำ:
ฉันเปิดไฟล์บรรทัด 975 แก้ไขบนบรรทัด 949 (สร้าง.swp
ไฟล์) และฆ่ากระบวนการแล้วลบต้นฉบับ $ vim Original_File
ถามว่าฉันต้องการกู้คืนจาก. swp หรือไม่>> ใช่; เฉพาะ 68 บรรทัดแรกและ 34 บรรทัดสุดท้าย (เริ่มต้น 8 บรรทัดด้านบนการแก้ไขของฉัน) ได้รับการกู้คืนจริง
จากนั้นฉันทำการทดสอบซ้ำด้วยไฟล์ขนาดเล็ก: จาก 20 ถึง 200 บรรทัดไฟล์. swp มีเนื้อหาต้นฉบับ 100% แต่ที่ 300 บรรทัดเฉพาะบรรทัดแรก 68 และ 18 บรรทัดสุดท้าย (เริ่มต้น 2 บรรทัดเหนือการแก้ไขของฉัน) รวมอยู่ใน. swp
เป็นข้อสรุปที่ดีที่จะรู้ว่าเสียงเรียกเข้าจะบันทึก "ส่วนหัว" ของไฟล์และ "ด้านล่าง" ในไฟล์. swp อาจมีการตั้งค่าเพื่อควบคุมจำนวนบรรทัดที่ควรจะเป็น. swp