"एमवी फ़ाइल" और अब यह गायब है


32

एक टर्मिनल विंडो में, मैंने टाइप किया:

mv filename ..\..      [Note the wrong slash.]

अब मुझे नहीं मिल रहा है। गया हुआ। मैंने कुछ खोजों को चलाया और पुनर्प्राप्त की गई फ़ाइलों के माध्यम से देखा। कुछ भी तो नहीं। Poof। ठीक पहले विंडोज मशीन का उपयोग करने के लिए मुझे सही काम करता है।

किसी को भी पता है कि यह कहाँ चला गया हो सकता है?


find / -iname thefilename -print शायद ?
सर्गी कोलोडियाज़नी

@Serg thefilenameफाइलों के मूल नाम के रूप में, यह findकमांड इसे नए नाम के तहत नहीं मिलेगा।
एलियाह कगन

मुझे एहसास हुआ कि टिप्पणी पोस्ट करने के तुरंत बाद। मेरी आरंभिक प्रतिक्रिया यदि कोई फ़ाइल गुम है तो उसे ढूंढने के लिए उपयोग करना है, लेकिन जो मुझे महसूस नहीं हुआ, वह यह है कि फ़ाइल को स्थानांतरित करने के बजाय फ़ाइल का नाम बदल दिया गया है
Sergiy Kolodyazhnyy

जवाबों:


70

यह वर्तमान निर्देशिका में कहीं नहीं गया है। इसे ....(चार डॉट्स) के रूप में नाम दिया गया है ।

चूँकि किसी भी फ़ाइल नाम के .सामने एक छिपी हुई फ़ाइल मानी जाती है, इसलिए वह छिपी हुई है। इसलिए, यदि आप ऐसा करते हैं ls, तो आपको यह नहीं मिलेगा। हमेशा की तरह, आपको इसे देखने के लिए (या ) छिपी हुई फ़ाइलों को देखने के लिए -a(या -A) विकल्प की आवश्यकता है।lsls -als -A

मुझे इसे तोड़ने दें, आप भाग गए mv filename ..\.., पहले दो डॉट्स का मतलब होता है पैरेंट डाइरेक्टरी यदि यह थी ../, लेकिन आपने बैकवर्ड स्लैश का उपयोग किया है ..\जो अगले वर्ण से बचने के लिए शेल को इंगित करता है, लेकिन एक डॉट .का शेल के लिए कोई विशेष अर्थ नहीं है। तो, इसे एक शाब्दिक के रूप में माना जाएगा .और अंतिम .भी जोड़ा जाएगा, इसलिए आपको ....फ़ाइल नाम के रूप में चार डॉट मिले ।

पिछले (मूल) नाम पर वापस लौटने के लिए, दौड़ें mv .... filename


2
हाहाहाहा ... मुझे कभी नहीं हुआ। वो रहा: "...."। धन्यवाद! मुझे लगता है कि इसने पहले डॉट की व्याख्या की।
जॉन

2
मैं सुझाव दे सकता हूं la -A(राजधानी ए के साथ)। यह वैसा ही करता है, ls -aलेकिन बहिष्कृत करता है .और ..
धान लांडौ

13

mv .... filenameइसे वापस नाम बदलने के लिए चलाएँ । ( mv ..\.. filenameकाम भी करेगा, लेकिन बहुत ही शानदार \है - जैसा कि आपके मूल आदेश में था।)

  • फ़ाइल को हटाया नहीं गया है, यही कारण है कि पुनर्प्राप्त करने योग्य हटाए गए फ़ाइलों की खोज करना नहीं मिला।
  • विंडोज की तरह, .और ..प्रविष्टियां हर निर्देशिका में मौजूद हैं और क्रमशः "वर्तमान" और "मूल" निर्देशिकाओं को देखें। लेकिन विंडोज के विपरीत, दो से अधिक डॉट्स के दृश्यों का कोई विशेष अर्थ नहीं है। हालांकि यह असामान्य है, आप पूरी तरह से डॉट्स वाले नाम के साथ एक साधारण फ़ाइल का नाम रखने के लिए पूरी तरह से स्वतंत्र हैं, इसलिए जब तक यह कम से कम तीन डॉट्स लंबा न हो जाए।
  • विंडोज के विपरीत, उबंटू में शेल \एक भागने चरित्र के रूप में उपयोग करता है , यह सुनिश्चित करता है कि शेल निम्नलिखित चरित्र को सचमुच एक विशेष अर्थ देने के बजाय व्यवहार करता है। .चरित्र खोल में कोई विशेष अर्थ नहीं है (विशेष रूप से, खोल क्या करने के लिए ज़िम्मेदार नहीं है .और ..प्रविष्टियों काम करते हैं)। इसलिए, आपकी आज्ञा में, \.इसके बराबर था .
  • जैसा कि हेमले कहते हैं , डिफ़ॉल्ट रूप से अधिकांश उपयोगिताओं में फाइलें और निर्देशिकाएं नहीं दिखाई देती हैं , जिनके नाम ए से शुरू होते हैं .। चूंकि ....शुरू होता है ., lsबिना ध्वज -Aया -aध्वज के चलने से इसका पता नहीं चलता।

1
बिलकुल ऐसा ही मैंने पाया। मैं सोच रहा था कि मेरे "\" ने भागने के रूप में क्यों काम नहीं किया, लेकिन हां, बचने के लिए कुछ भी नहीं किया गया ताकि सामान्य रूप से इलाज किया जा सके। समझ में आता है।
जॉन

5

यह अभी भी उसी निर्देशिका में है, बस अब एक 'छिपी हुई' फ़ाइल है। आप इसे "mv .... फ़ाइलनाम" द्वारा पुनर्प्राप्त कर सकते हैं।

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