मैं एक ऐसी फ़ाइल का नाम कैसे बदल सकता हूँ जिसका नाम अपने आप में एक पूर्ण पथ है (उदाहरण के लिए "g: \" से शुरू होता है)? [डुप्लिकेट]


30

अनजाने में, मैंने g:\filename.csvपायथन स्क्रिप्ट के माध्यम से विंडोज एक्सपी पर एक फ़ाइल बनाई है ।

ध्यान दें कि g:\filename.csvफ़ाइल नाम है। दरअसल यह F: ड्राइव पर सेव होता है।

मैं कमांड प्रॉम्प्ट ( ren oldfilename newfilename) या F2एक्सप्लोरर विंडो का उपयोग करके इसका नाम नहीं बदल सकता । यह कहता है "ड्राइव से नहीं पढ़ा जा सकता" - विंडोज को लगता है कि फ़ाइल G: ड्राइव पर है।

क्या इसका नाम बदलने का कोई तरीका है?



8
हालाँकि, आपके पास अपना समाधान पहले से ही है, क्या आप उस कोड को पोस्ट कर सकते हैं जिसने फ़ाइल बनाई है? मुझे नहीं लगा कि विंडोज फ़ाइल एपीआई ने आपको एक अवैध फ़ाइल नाम निर्दिष्ट करने की अनुमति दी है ..
BlueRaja - Danny Pflughoeft

5
आपको लिनक्स / उबंटू में बग दर्ज करना चाहिए। फाइलसिस्टम ड्राइवर को पता होना चाहिए कि यह लक्षित ड्राइव के लिए एक अमान्य फ़ाइल नाम है और इसके परिणामस्वरूप ऐसी फाइल बनाने की अनुमति नहीं दी जानी चाहिए। यह अभी भी ऐसी फ़ाइलों को संबोधित करने की अनुमति देना चाहिए यदि वे पहले से मौजूद हैं, हालांकि उन्हें हटाने या नाम बदलने के लिए।
देवोलस


2
इस फ़ाइल नाम के बारे में वास्तव में कुछ भी अमान्य नहीं है जहाँ तक NTFS का संबंध है, यह केवल विंडोज की एक सीमा है जो इसे ठीक से संदर्भित होने से रोकता है।
फोग्ग

जवाबों:


21

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


1
मैं उबंटू के साथ डुअल-बूटिंग कर रहा हूं। तो यह आसानी से आजमाया जा सकता है। मुझे कोशिश करें और यहां प्रतिक्रिया दें। धन्यवाद।
विनीत

7
किया हुआ। उबंटू से, मैंने डिलीट कर दिया। फ़ाइल। धन्यवाद।
विनीत

1
मैंने शीर्ष रेटेड उत्तर दिया था जिसमें कहा गया था कि नाम से पहले \\? \ का उपयोग करें। मैं गलत था और वह तरीका काम नहीं करेगा, इसलिए मैंने अपना उत्तर हटा दिया। आपको इस उत्तर की विधि या अन्य उत्तरों में से एक का उपयोग करने की आवश्यकता है।
स्कॉट चैंबरलेन

7

यदि आपका ओएस विंडोज है तो आप निम्नलिखित ट्रिक का उपयोग कर सकते हैं:

1. Issue command `dir /X`
2. Find out your file in 8 dot 3 notation
3. Use 8 dot 3 notation for file operations as ren, del, copy, print and others.

ध्यान दें, यदि आप नाम conया कुछ अन्य विंडोज डिवाइस आरक्षित नामों के साथ फाइल बनाने में कामयाब रहे, तो आप दृष्टिकोण के साथ भाग्य से बाहर हैं।


6

आप भी कोशिश कर सकते हैं ...

एक विंडोज से Command Prompt:

ren "F:???filename.csv" "filename.csv"

या

ren "F:*.csv" "filename.csv"

4

आप हमेशा Cygwin की कोशिश कर सकते हैं । इसमें पथ नाम फ़िल्टर इस प्रकार की त्रुटि के लिए अधिक आज्ञाकारी होना चाहिए, क्योंकि यह POSIX मानकों का उल्लंघन नहीं करता है। बैश और फ़ाइलटाइल स्थापित करें और फिर प्रयास करेंrm /cygdrive/f/g:\\filename.csv

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