यूनिक्स कॉमैंड लाइन पर "पूर्ववत" कमांड है?


8

मुझे लग रहा है कि मुझे एक दिन इसकी आवश्यकता होगी, जैसे कि अगर मैंने अभी कुछ हटा दिया है जो मुझे नहीं चाहिए, या कुछ का नाम नहीं बदला और उसे याद नहीं किया जाना चाहिए कि इसे क्या कहा जाना चाहिए, आदि।


कोई ओएस जिसे मैं इस तरह की सुविधा का समर्थन करता हूं। एक के लिए पूर्ववत समर्थन करने में सक्षम होने के लिए rm -Rf /आवश्यक होगा कि कहीं न कहीं अस्तित्व में ड्राइव का पूरा बैकअप हो। यह कभी संभव नहीं होने वाला है (या इस प्रकार के बैकअप लेने में अपार समय के कारण वांछित है)। यह सिर्फ एक चीज है जो एक कार्यक्रम कर सकता है; ऐसा कुछ करने के लिए पूर्ववत मन कभी नहीं mke2fs /dev/hdb1
krowe2

आह, मैं यहाँ एक पेस्ट (या टेक्स्ट को कमांड लाइन पर दर्ज किया गया) को पूर्ववत करने की लाइनों के साथ अधिक सोच रहा था, उदाहरण के लिए askubuntu.com/questions/444966/…
Pat

जवाबों:


11

नकारात्मक। लिनक्स में कोई जादू पूर्ववत बटन नहीं है।


3
लेकिन अगर आप एक टाइपो के साथ कुछ पेंच करते हैं, तो आप अक्सर यह जानने के लिए कमांड इतिहास का उपयोग कर सकते हैं कि आपने जो सोचा था, उसके विपरीत वास्तव में आपने क्या किया।
वेलोसाइरेप्टर्स


1
अच्छा बिंदु इतिहास | grep partofwhatidid मददगार हो सकता है
RobotHumans

7

नहीं।

यूनिक्स मूल रूप से एक पूर्ववत सुविधा प्रदान नहीं करता है। दर्शन यह है कि अगर यह चला गया, यह चला गया। यदि यह महत्वपूर्ण था, तो इसे वापस किया जाना चाहिए था


किसी फ़ाइल को निकालने के बजाय, आप इसे अस्थायी "ट्रैश" निर्देशिका में ले जा सकते हैं। कुछ डेस्कटॉप वातावरण अपने "डिलीट" कमांड को फ़ाइल को ट्रैश में ले जाते हैं। लेकिन सावधान रहें कि केवल कुछ एप्लिकेशन इसका उपयोग करेंगे; अन्य सिर्फ फ़ाइल को निकाल देंगे।

कई आदेशों को उलटा किया जा सकता है, उदाहरण के लिए, फ़ाइल को वापस ले जाकर एक फ़ाइल चाल को पूर्ववत किया जा सकता है। यदि कोई फ़ाइल हटा या अधिलेखित करता है, तो उसे आसानी से पूर्ववत नहीं किया जा सकता है; उनमें से कुछ को शेल सेटिंग्स के माध्यम से आकस्मिक डेटा हानि के खिलाफ और अधिक मजबूत बनाया जा सकता है। विशेष रूप से:

  • कमांड लाइन पर, cpऔर mvकिसी भी मौजूदा लक्ष्य फ़ाइल को अधिलेखित कर देगा, लेकिन आप उन्हें शीघ्र बना सकते हैं:

    alias cp='cp -i'
    alias mv='mv -i'
    

    मैं इन दो उपनामों की सिफारिश करता हूं क्योंकि उनके बिना, cpऔर mvदो काम करते हैं: नकल करना / चलना और हटाना। नहीं होने cpऔर mvफ़ाइलों को हटाने यूनिक्स दर्शन (एक आदेश एक ही काम करता है) और त्रुटि-रहित होता ध्यान में रखते हुए अधिक है। (यह पूरी तरह से अलग है rm -i, जो अपना काम करने से पहले पुष्टि करने के लिए कहता है - इस तरह का एक व्यवस्थित संकेत स्वचालित प्रतिक्रिया को ट्रिगर करता है और इस तरह एक बेकार झुंझलाहट बन जाता है।)

  • आप >पुनर्निर्देशन ऑपरेटर केवल फाइलें बनाने के लिए स्वीकार कर सकते हैं, ताकि आपको >|fooकिसी मौजूदा फ़ाइल को ओवरराइट करने की अनुमति के लिए लिखना पड़े foo

    set -o noclobber
    

एक FUSE फाइल सिस्टम है जो स्वचालित रूप से पुराने संस्करणों की प्रतियां रखता है: copyfs , अधिकांश यूनियनों के लिए उपलब्ध (* बीएसडी, लिनक्स, ओएस एक्स, सोलारिस)। बेशक, यह बहुत सारे संसाधनों का उपयोग कर सकता है।

यदि आपने किसी फ़ाइल को किसी भिन्न निर्देशिका में स्थानांतरित कर दिया है और उसका नाम (उसका हिस्सा) याद है, लेकिन उसका स्थान नहीं है, तो आप locateइसे खोजने के लिए कमांड का उपयोग कर सकते हैं ।


इस तरह की दुर्घटनाओं से बचाने का सबसे अच्छा तरीका एक संस्करण नियंत्रण प्रणाली (सीवीएस, बाज़ार, दर्क्स, गिट, मर्क्यूरियल, तोड़फोड़, ...) का उपयोग करना है। इसे सीखने में थोड़ा समय लगता है, लेकिन मध्यम और दीर्घावधि में यह काफी कम हो जाता है।


0

कोई "पूर्ववत" विकल्प नहीं है, केवल अगर आपने ट्रैश सुविधा का उपयोग किया है।

हटाए गए फ़ाइलों को पुनर्प्राप्त करने के लिए, यह वास्तव में निर्भर करता है कि आपके पास कौन सी फ़ाइल प्रणाली है।

वहाँ है:

  • TestDisk cgsecurity द्वारा

यह ज्यादातर प्रमुख फाइल सिस्टम को सपोर्ट करता है।

एचएफएस प्लस

के लिए HFS Plus (ओएस एक्स) जैसे कुछ वाणिज्यिक समाधान देखते हैं:

और पढ़ें: स्वरूपित HFS + विभाजन से पुनर्प्राप्त फ़ाइलें


पूरी सूची के लिए, जाँच करें:


इसी तरह की स्थितियों से बचने के लिए, कृपया अधिक बार बैकअप करें, संस्करण नियंत्रण का उपयोग करें या ट्रैश में जाने के लिए मेकrm को पढ़ें ।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.