लिनक्स के पूर्ववत करें? [डुप्लिकेट]


31

संभावित डुप्लिकेट:
UNDO LINUX ट्रैश कमांड

नमस्ते,

क्या rmकमांड को पूर्ववत करने का कोई सरल तरीका है ?

सवाल विशुद्ध रूप से सैद्धांतिक है; मेरे पास एक बेंचमार्क कतार के लॉग को हटा दिया गया है जिसने चलाने के लिए एक पूरा दोपहर का भोजन लिया।



1
... या कम से कम बहुत करीबी से संबंधित, भले ही सवाल खुद को थोड़ा और सामान्य बनाने के लिए तैयार हो
जॉनरिक

जवाबों:


33

Ubuntu या समान:

$ sudo apt-get install trash-cli
$ alias rm=trash

फिर अपनी पसंद के शेल के लिए उस उपनाम, .bashrc या उपयुक्त लॉगिन स्क्रिप्ट को रखें।

trash-cliपैकेज एक ही कचरा कर सकते हैं कि GNOME और KDE और अन्य उपयोग करने के लिए एक कमांड लाइन इंटरफेस है। तो आप trashकमांड के माध्यम से जो कुछ भी हटाते हैं उसे GNOME / KDE द्वारा पुनर्स्थापित किया जा सकता है और इसके विपरीत।

में अन्य आदेशों trash-cliपैकेज हैं trash-list, trash-empty, और restore-trash


11
ट्रैश-क्ली के लिए +1, अलियासिंग आरएम के लिए -1।

1
क्या गलत है अलियासिंग rm? मुझे अपने आकस्मिक विलोपन के लिए पूर्ववत बटन रखना पसंद है, यहां तक ​​कि कमांड लाइन पर भी। इसके अलावा, trash-cliकई GNU rmविकल्पों को स्वीकार (और अनदेखा) करके स्पष्ट रूप से इसे सुविधाजनक बनाता है । इसके अलावा, ओपी ने आरएम को पूर्ववत करने का तरीका पूछा। यह समाधान उपनाम के बिना प्रश्न का सही उत्तर नहीं देता है।
रयान सी। थॉम्पसन

15
@ रेयान: क्योंकि आपको rm कमांड वास्तव में क्या करता है, की तुलना में कुछ अलग करने के लिए आरएम करने की आदत होती है, और तब आप गलती करते हैं जब यह अलियास नहीं होता है। इसके बजाय कचरा कमांड का उपयोग करने की आदत डालें और ऐसा नहीं हो सकता है।

5
@ रेंजर: या ... आप उर्फ rmऔर फिर खुद को सम्मोहित कर सकते हैं कि आप भूल गए। इस तरह से आप अभी भी उपयोग कर सकते हैं, rmहालांकि यह अंतिम है .... लेकिन अगर आप फिसल जाते हैं और "ओह नोज़ !!" तुम पूरी तरह से खराब नहीं हो। (यानी यह "पुनर्प्राप्त करने योग्य" कार्यक्षमता पर निर्भर नहीं है)
मिपेन

@RyanThompson: यह एक अच्छी टिप है, लेकिन यह कैसे काम करने के लिए कॉन्फ़िगर करने के लिए sudo rm?
ताकेशिन

15

पारंपरिक उत्तर है:

आप नवीनतम बैकअप से फ़ाइल को पुनर्प्राप्त करें। आपके पास हाल ही में बैकअप है, क्या नहीं?

क्योंकि कई यूनिक्स फाइल सिस्टम पर यह सरल संभव नहीं है, या बहुत मुश्किल है।

जैसा कि अन्य लोगों ने नोट किया है कि यह एंड-ऑल नहीं है और इस मुद्दे का सभी किसी भी अधिक है, लेकिन इस तरह की गलतियां नहीं करना अभी भी पसंदीदा तरीका है।


5
मैं वास्तव में अपनी सभी लिपियों को प्रति घंटा प्रतिबद्ध bzr रिपॉजिटरी पर रखना चाहता हूं।
एडम मटन

3
आधुनिक उत्तर है: हाल ही में फ़ाइल सिस्टम स्नैपशॉट से फ़ाइल पुनर्प्राप्त करें। :-)
घुंघरू

यह एक अच्छा सवाल है ... मैं आम तौर पर ~ / डाउनलोड का बैकअप नहीं बनाता ... और पास होने से मेरी सामग्री को मिटा दिया rm -fr *(1)*... हर फ़ाइल दूर हो गई। इसलिए बैकअप रखना हमेशा समाधान नहीं होता है। कूड़ा-करकट ठंडा लगता है।
m3nda

नहीं, बैकअप होना हमेशा समाधान है। सिर्फ इसलिए कि आपने किसी चीज़ का बैकअप नहीं चुना है, समाधान नहीं करने का समर्थन नहीं करता है, यह आपको कुछ वापस न करने के लिए मूर्खतापूर्ण बनाता है।
djsmiley2k -

4

भविष्य की गलतियों को रोकने के लिए, आप rm -i को rm उपनाम देना चाहते हैं ...


6
मुझे आमतौर पर लगता है कि यह कभी भी किसी भी त्रुटि को नहीं रोकता है ('y' काफी स्वचालित रूप से टाइप किया जाता है), लेकिन बहुत समय लगता है, और He-Whose-Name-Must-Not-Be-Mentioned rm -rf के उपयोग को प्रोत्साहित करता है।
एडम मटन

यह आपको चीजों को गड़बड़ाने से पहले एक अतिरिक्त जाने देता है। मैं आम तौर पर सिर्फ lsएक ही मापदंडों के साथ इससे पहले कि मैं देख सकता हूं कि क्या होने जा रहा है।
रिच ब्रैडशॉ

मैं आमतौर पर फ़ाइलों को उद्देश्य से हटाता हूं, मुझे लगता है कि मुझे बाद में उन फाइलों की आवश्यकता थी। इसलिए इंटरएक्टिव मदद नहीं करेगा
andrewtweber
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.