खिड़कियों में अमान्य वर्ण वाली फ़ाइल हटाएं


16

मेरे पास कुछ फ़ाइलें हैं जिनमें फ़ाइल नाम में बृहदान्त्र वर्ण है (उदाहरण। 1d67c0d23e859ed4a259749e4a720d9e: default-सिंक)। जब मैं उन्हें कमांड लाइन से कमांड से हटाने की कोशिश करता हूं:

c:\backup> del /F *.*

मुझे "सिस्टम निर्दिष्ट फ़ाइल नहीं मिल रही है।" प्रत्येक फ़ाइल के लिए। यदि मैं एक व्यक्तिगत फ़ाइल निर्दिष्ट करता हूं:

c:\backup> del /F "1d67c0d23e859ed4a259749e4a720d9e:default-sink"

मुझे "फ़ाइल नाम, निर्देशिका नाम या वॉल्यूम लेबल सिंटैक्स गलत है।" यदि मैं अपने द्वारा प्राप्त मूल फ़ोल्डर पर rd का उपयोग करने का प्रयास करता हूं

मैं इन फ़ाइलों को कैसे निकाल सकता हूं?


2
ये फ़ाइलें NTFS विभाजन पर बनाई गई थीं जब मुझे लिनक्स में बूट किया गया था। मुझे लगता है कि लिनक्स बूट डिस्क का उपयोग करना होगा क्योंकि ऐसा लगता है कि फ़ाइल सिस्टम ड्राइवर स्तर पर फ़ाइल नाम में कोलन पसंद नहीं है।
ग्रोम

जवाबों:


22

इस तरह की फ़ाइलों को हटाने के संभावित तरीकों को सूचीबद्ध करने के लिए Microsoft KB आलेख है:

http://support.microsoft.com/kb/320081

जिस तरह से मैं आमतौर पर देशी एपीआई विधि का उपयोग करता हूं:

del "\\?\c:\path\1d67c0d23e859ed4a259749e4a720d9e:default-sink"

इसके अनुसार:

http://msdn.microsoft.com/en-us/library/aa365247%28VS.85%29.aspx

:NTFS पर आरक्षित वर्ण है, देशी एपीआई विधि मैं उपर्युक्त ऐसी फ़ाइलों को हटाने के लिए सिफारिश की तरीका है।


4
यह बृहदान्त्र के लिए काम नहीं करता है, क्योंकि इसे एक नामित डेटा स्ट्रीम के रूप में व्याख्या किया गया है।
psusi

इसने मेरे केस के लिए काम किया। मैं एक अल्पविराम के साथ इस मुद्दे को सम्‍मिलित कर रहा था,
मैहर फतौह

धन्यवाद, यह मेरे लिए काम किया। फ़ाइल एक अवधि में समाप्त हो गई। CA848D8F।
मस्तरो

1
काम नहीं करता है। मेरे फ़ाइल नाम में एक बैकस्लैश है।
पचेरियर

यदि फ़ाइल नाम में :ओपी के बारे में पूछा गया है, तो यह विधि काम नहीं करती है। इसका उपयोग करें chkdskया इसे लाइव लाइनक्स से हटाएं।
सौरव घोष

15

मुझे लगता है कि आप 8.3 नाम की कोशिश कर सकते हैं?

del /F 1d67c0~1

ध्यान दें कि NTFS ड्राइव पर आप स्पष्ट रूप से 8.3 कार्यक्षमता को अक्षम कर सकते हैं, इसलिए यदि ऐसा है तो आप इस विकल्प के लिए भाग्य से बाहर हैं। फ़ाइल का नाम पाने के लिए dir adir /x

वहाँ एक फ्रीवेयर उपकरण कहा जाता था, delinvfileलेकिन वे चले गए और इसे शेयरवेयर / भुगतान में बदल दिया


format8.3 नामों के समर्थन वाली कमांड के साथ बनाए गए NTFS वॉल्यूम पर मैं यह कैसे कर सकता हूं ?
14:22 पर user2284570

1
@ user2284570 यह विधि काम नहीं करेगी। जब मैंने उस उत्तर को लिखा, तो Microsoft के 8.3 नाम सक्षम थे, लेकिन इन दिनों यह डिफ़ॉल्ट रूप से अक्षम है।
मार्क हेंडरसन

@MarkHenderson, मेरा फ़ाइल नाम है 7:2। मैं फ़ाइल नाम के लिए 8.3 नाम का उपयोग कैसे करूं 7:2?
पचेरियर

@Pacerier मेरी पिछली टिप्पणी देखें। यह विधि आधुनिक ऑपरेटिंग सिस्टम पर काम नहीं करेगी। विंडोज एक्सपी या पुराने।
मार्क हेंडरसन

13

यह मेरे लिए काम किया:

  1. दौड़ा chkdsk /f
  2. रिबूट पीसी
  3. तब मैं फ़ाइल का चयन और हटाने में सक्षम था

4

सभी फ़ाइलें बंद करें, यदि कोई खोला गया है, तो उस ड्राइव में सहेजा जाता है जिसमें ऐसी फाइलें हैं। अब, ड्राइव गुण खोलें।

"मेरा कंप्यूटर" -> "इस ड्राइव पर राइट क्लिक करें"> गुण

फिर, " टूल " टैब पर जाएं और 'एरर चेकिंग' लेबल के तहत " अभी चेक करें" पर क्लिक करें ।

यहाँ छवि विवरण दर्ज करेंबड़ी छवि के लिए यहां क्लिक करें

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

मैंने अपनी बाहरी हार्ड डिस्क से ऐसी फ़ाइलों को सफलतापूर्वक हटा दिया है।


3

मेरे पास अपने पीसी (विंडोज 7) पर स्थापित UNIX- आधारित अनुप्रयोगों के लिए सबसिस्टम है । विंडोज शेल से, मैं एक फाइल बना सकता हूं touch 1d67c0d23e859ed4a259749e4a720d9e:default-sink, फिर इसे हटा देंrm *:*


POSIX आज्ञाकारी उपयोगिताओं (जैसे SFU) ऐसी फ़ाइलों को हटा सकती है।
ausmith1

@JoeInternet: sigghh Microsoft ने 2012 और इसके बाद के सभी गैर-विंडोज सबसिस्टम को हटा दिया।
14:22 बजे user2284570

... लेकिन यूनिक्स सबसिस्टम फिर से जीत में वापस आ गया है 10.
user165568

1

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


1

7zip उन फ़ाइलों को हटा सकता है जो विंडोज में विफल रहती हैं; मैंने इसका उपयोग पुराने समय में फ़ाइल नाम के साथ व्यवहार करते समय किया है, लेकिन मैंने इसे कभी भी कॉलन के साथ फ़ाइलों पर आज़माया नहीं है। इनका उपयोग आमतौर पर ADS को दर्शाने के लिए किया जाएगा।


ऐसा इसलिए है क्योंकि 7-जिप साइबरबीन का उपयोग करते हैं।
user2284570

1
मेरी दोनों फाइलों के लिए काम नहीं करता है। पहली फ़ाइल का बैकस्लैश के साथ फ़ाइल नाम है और दूसरे फ़ाइल का कोलन के साथ फ़ाइल नाम है।
पचेरियर

नहीं, यह इसलिए है क्योंकि 7-ज़िप शेल के बजाय विंडोज एपीआई का उपयोग करता है। यह एपीआई के रूप में एक ही सीमा है: यह सोचता है कि कॉलोन धाराओं को इंगित करते हैं।
user165568

7zip ने मेरे लिए काम किया
user1278519

1

मेरे पास एक दोहरी बूट प्रणाली है, और उपरोक्त उत्तर में से कोई भी मेरे लिए काम नहीं करता है। यदि फ़ाइल एक डिस्क में स्थित है जो आपके अन्य ओएस (उबंटू 16.04 एलटीएस मेरे लिए) द्वारा माउंट की गई है, तो आप अपने अन्य ओएस का उपयोग करके इसे हटा सकते हैं;)


यह काफी हद तक उचित है जब एक बाँध में (हालांकि एक ऑनलाइन मशीन के लिए नहीं किया जा सकता है)। इसके अलावा, देशी ड्यूल बूट की आवश्यकता नहीं है, क्योंकि हम ऐसा करने के लिए लाइव वितरण को बूट कर सकते हैं जैसे कि फेडोरा इंस्टॉलर डिस्क या नोपेपिक्स। इस तरह के माहौल में जब कोई हो, तो सावधान रहना चाहिए क्योंकि NTFS3G ड्राइवर के रूप में, जो हम इस सिस्टम को माउंट करने के लिए उपयोग करते हैं, वह अधिकांश विंडोज अनुमतियों / ACLs का सम्मान नहीं करेगा (जो वास्तव में "अटक गई" फ़ाइलों से छुटकारा पाने में इतना प्रभावी है) ।
स्पूलर

0

क्या आपने फ़ाइल नाम उद्धृत करने का प्रयास किया है? सटीक कमांड देना जो आप चला रहे हैं वह आसान होगा।


मैंने इसे सटीक कमांड में जोड़ा है जो मैं सवाल करने के लिए चला रहा हूं।
ग्रोम

0

क्या आपने वाइल्डकार्ड का उपयोग करने की कोशिश की है? उदाहरण के लिए 'डेल 1d67c0d23e859ed4a259749e4a720d9e *। * आपको काम करना चाहिए।


आपने मुझे वाइल्डकार्ड आज़माया। कोई भाग्य
grom

1
अगली चीज़ जो मैं समझता हूं कि सिस्टम को लिनक्स cd (जैसे सिस्टम रेस्क्यू सीडी) के साथ बूट करना है, वहां वॉल्यूम को माउंट करें और वहां से डिलीट की कोशिश करें। आपको उस बिंदु पर दिलचस्प परिणाम मिल सकते हैं, जैसा कि कौन जानता है कि फाइलसिस्टम में वास्तव में क्या हो रहा है।
माइकल कोहने

@MichaelKohne: मुझे लगता है कि यूनिक्स पथ कार्यान्वयन का उपयोग करना सही समाधान है। लेकिन लिनक्स का उपयोग क्यों? विंडोज़ को NT सबसिस्टम के रूप में चलाया जाता है, और पहले से ही एक POSIX / Unix NT सबसिस्टम है।
user2284570

1
@ user2284570 - क्योंकि तथ्य यह है कि वे लिनक्स के साथ बनाए गए थे, यह संभावना है कि लगता है कि लिनक्स NTFS ड्राइवर को कुछ ऐसा करने की अनुमति दी जानी चाहिए, जो कि विंडोज POSIX खोल भी नहीं हो सकता है, जो फ़ाइल सिस्टम ड्राइवर के पिछले स्लाइड करने में सक्षम नहीं है। लाइव लिनक्स सीडी को बूट करने के लिए बहुत सरल, फर्जी फाइल को हटा दें, और विंडोज पर वापस रीबूट करें।
माइकल कोहेन

@MichaelKohne: नहीं, क्योंकि UNC पथ पहले से ही काम करते हैं (देशी सबसिस्टम) , और POSIX सबसिस्टम के साथ वैकल्पिक डेटा स्ट्रीम तक कोई सीधी पहुँच नहीं है, इसलिए आप :फ़ाइलों के अंदर उपयोग कर सकते हैं ।
user2284570

0

क्या आपने वास्तविक 8.3 नाम का पता लगाने के लिए dir / X की कोशिश की है, और फिर उस नाम को हटाने की कोशिश की है?

या, उस फ़ाइल में एक वैकल्पिक डेटा स्ट्रीम हो सकता है? आप इसे देखने के लिए टूल को http://www.nirsoft.net/utils/alternate_data_streams.html पर देख सकते हैं जो आपको बता सकता है कि (मैंने उस टूल का कभी उपयोग नहीं किया है, यह तब आया जब मैंने खोजा था) ।


0

मेरे पास नाम में एक अल्पविराम वाला एक फ़ोल्डर था। मैंने उपरोक्त सुझावों में से कुछ की कोशिश की और उन्हें काम करने के लिए नहीं मिला।

मैं साइबरविन के साथ फ़ोल्डर्स को हटाने में सक्षम था। उस एप्लिकेशन को इंस्टॉल करना सभी के लिए नहीं है, लेकिन यह काम करेगा।


0

उपरोक्त सुझावों में से किसी ने भी मेरे लिए काम नहीं किया। मैंने विनर का इस्तेमाल किया। Winrar खोलें और आपको फाइलों की एक सूची दिखाई देगी, जहां आप संदिग्ध फ़ाइल "फ़ाइल नाम" (जो आपके द्वारा "फ़ाइलनाम: some_text.txt" के रूप में बनाई गई थी। Winrar में फ़ाइल का नाम बदलें और इसे एक्सटेंशन प्रदान करें। जैसे) .doc)।

विंडोज एक्सप्लोरर पर वापस जाएं आपको "फ़ाइल नाम .txt" (या डॉक्टर) दिखाई देगा। वहां से हटाओ।

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