जवाबों:
vim -r .swp
यह रिकवरी मोड में जाता है और आपको अधिक जानकारी देता है। मुझे लगता है कि आप यही चाहते हैं।
.swX
-फाइलों को पीछे छोड़ दिया जाता है यदि एक बिना सहेजे गए फ़ाइल के साथ एक सत्र मारा जाता है / क्रैश / कुछ और खराब होता है। वे उस समय के दौरान भी मौजूद होते हैं जब कोई सहेजा गया बफर विम सत्र में खुला होता है। vim -r
इन अस्थायी फ़ाइलों को पढ़ता है और सामग्री को फिर से बनाता है। आपके द्वारा इसे पुनर्प्राप्त करने के बाद, बस इसे सामान्य रूप से सहेजें, जैसे :w newfilename
।
आपको .swp को पुनर्प्राप्त करने के लिए मूल फ़ाइल की आवश्यकता नहीं है। बस फ़ाइल को खोलें जैसे कि यह मौजूद है। vim .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 इत्यादि उत्पन्न करते हैं, जो उस बिंदु तक स्वैप का आंशिक योग प्रतीत होते हैं। आप अपनी पसंद के संस्करण पर वापस लौट सकते हैं और संपादित कर सकते हैं (~ = कांटा) या बचा सकते हैं (~ = stash)। आखिरकार आप स्वैप फ़ाइलों को टारगेट कर सकते हैं, उनके बैकअप को डैमेज कर सकते हैं, आदि। मैं विवरण के बारे में गलत हो सकता हूं जब यह बड़ी फ़ाइलों की बात आती है - मुझे यकीन नहीं है कि यह अतिरिक्त स्वैप फ़ाइलों को कैसे प्रभावित करता है - नीचे देखें।
Vim का उपयोग करके मूल फ़ाइल खोलें, और पुनर्प्राप्ति विकल्प चुनें।
Vegar Westerlund और Heptite टिप्पणियों को पढ़ने के बाद, मैं जानना चाहता था कि किस बिंदु पर .swp फ़ाइल से पुनर्प्राप्त करने के लिए मूल फ़ाइल (या बैकअप) की आवश्यकता है। यहाँ क्या किया है:
मैंने 975 लाइनों की फाइल खोली, इसे लाइन 949 पर संपादित किया (एक .swp
फाइल बनाकर ) और इस प्रक्रिया को मार दिया, फिर मूल को हटा दिया। $ vim Original_File
यह पूछे जाने पर कि क्या मैं .swp »> हां से उबरना चाहता हूं; केवल पहली 68 लाइनें और अंतिम 34 लाइनें (मेरे संपादन से ऊपर 8 लाइनें शुरू) वास्तव में बरामद हुई थीं।
मैंने तब छोटी फ़ाइलों के साथ परीक्षण दोहराया: 20 से 200 लाइनों तक, .swp फ़ाइल में मूल सामग्री का 100% शामिल था । लेकिन 300 लाइनों में, पहली 68 और पिछली 18 लाइनें (मेरे संपादन में 2 पंक्तियां शुरू करने) को .swp में शामिल किया गया था।
निष्कर्ष के रूप में यह जानना अच्छा है कि vim हमेशा .swp फ़ाइलों में "हेडर" और "बॉटम" फाइल को सेव करता है। हो सकता है कि नियंत्रण के लिए एक सेटिंग हो। कितनी पंक्तियों में एक .swp होना चाहिए?