जब कोई आउटपुट नाम निर्दिष्ट किया जाता है, तो WildCards Copy`s आउटपुट फ़ाइल को दूषित करता है


2

copy वाइल्डकार्ड (*?) स्रोत में उपयोग किया जाता है और एक आउटपुट नाम निर्दिष्ट किया जाता है जब एक लगभग (1K) फ़ाइल बनाएँ।

copy /D /V *?ample.png %homepath%/example.png

यह कुछ फ़ाइल प्रकारों के लिए काम करता है (.txt .rtf)
copy /D /V *?ample.txt %TEMP%\example.txt

स्रोत और गंतव्य दोनों में दिलचस्प वाइल्डकार्ड इसे ठीक करते हैं,
copy "*xample.pdf" "%TEMP%/*xample.pdf"
लेकिन फ़ाइल का नाम गड़बड़ कर देता है, यह आता है: le.pdfxample.pdf

यह एक बग या बुरा सिंटैक्स है ? मैं उलझन में हूं।

मैं विंडोज 7 x86_64
संबंधित प्रश्नों पर हूँ।
डॉस COPY कमांड कॉरपेट गंतव्य फ़ाइल के साथ वाइल्डर्ड का उपयोग
करना। मैं विंडोज में वाइल्डकार्ड का उपयोग किए बिना किसी फ़ाइल का उपयोग कैसे करूं?

जवाबों:


1

मुझे लगता है कि यह एक (गलत) इस्तेमाल की जाने वाली सुविधा है।
मेरा विंडाउन 10 help copyकहता है:

फ़ाइलों को जोड़ने के लिए, गंतव्य के लिए एक एकल फ़ाइल निर्दिष्ट करें, लेकिन स्रोत के लिए कई फाइलें (वाइल्डकार्ड या फ़ाइल 1 + फ़ाइल 2 + फ़ाइल स्वरूप का उपयोग करके)।

यदि फ़ाइल प्रारूप केवल संक्षिप्त स्रोत फ़ाइलों का समर्थन नहीं करता है, तो इसे ध्यान में रखना उपयोगकर्ता के लिए है।

इसके अलावा आपकी पहली कड़ी में बाली का जवाब आपके सवाल का पूरी तरह से जवाब देता है।

एक अलग वर्कअराउंड यदि अस्पष्ट नाम के साथ केवल एक स्रोत फ़ाइल है:

for %A in (*?ample.png) Do copy "%A"  "%homepath%/example.png"

मैं आखिरी वाक्य से असहमत हूं। A का *अर्थ है 0 या अधिक वर्ण; एक या अधिक वर्णों का *?अर्थ है , जो एक महत्वपूर्ण और उपयोगी अंतर है।
अगंजू

Copyयह मानकर नहीं चलना चाहिए कि इस मामले में "एप्लाइड" फाइलें हैं, इसे जांचना चाहिए और अगर कई बाइनरी फाइलें दी गई हैं, तो एक त्रुटि के साथ बाहर निकलें : बाइनरी फाइलों को समाप्‍त नहीं कर सकते हैं । Microsoft, इतना गुमराह
Vencen

1

वाइल्डकार्ड के आपके उपयोग के साथ एक समस्या ... आप एक ही लक्ष्य में कई फ़ाइलों को कॉपी कर रहे हैं (संभावित रूप से), इस खराब फ़ाइल को कई बार लिखने से काफी बेकार :)। लेकिन, इसने इस दिलचस्प 'फीचर' को सामने लाया। मुझे यह देखने के लिए कि मेरी बग फ्लॉपियों को बाहर लाने के लिए लुभाया गया है, यदि बग पुराना है।

मैं आपको डीआईआर में इस दिलचस्प बग को खोजने के लिए बधाई देता हूं! प्रतिलिपि की गई फ़ाइल समाप्त हो गई है। यह बहुत संगत है, / D / V स्विच पर निर्भर नहीं करता है, और केवल तब होता है जब एक ही फाइल को बार-बार ओवरराइट किया जाता है। Xcopy का उपयोग करते समय बग दिखाई नहीं देता है, जो सभी विंडोज़ उपयोगकर्ताओं के लिए अच्छी खबर है।


" वाइल्डकार्ड्स के आपके उपयोग के साथ एक समस्या " ....... सहमत है, लेकिन यह मुद्दा यहाँ नहीं है , और मैं इससे सहमत नहीं हूँ "... उसी फ़ाइल को अधिलेखित करने पर होता है ...." पहली बार होता है , हर समय। & धन्यवाद!
वैंकेन

मैंने आज सुबह 20 मिनट के लिए इसके साथ खेला है .... दोनों win7 / x86 के तहत एक आकर्षण की तरह इनपुट और आउटपुट काम करता है। और / बी के लिए मदद एक नियमित cmd विंडो में "लिंक के रूप में और अपने लक्ष्य के रूप में नहीं" प्रतिलिपि लिंक है, लेकिन नहीं, जैसा कि मैंने वीएस2008 सेमीड सत्र में जूसर्ट की जाँच की है।
माइकल रॉय

क्षमा करें, मुझे इस साइट पर वापसी कुंजी व्यवहार करने की आदत कभी नहीं पड़ेगी।
माइकल रॉय

लगता है कि कॉपी के बारे में अभी तक कई अच्छी बातें हैं ... मुझे आश्चर्य है कि अगर नया VS2017 sdks अपना खुद का संस्करण प्रदान करता है, तो जारी रखा जाएगा ...
Michaël Roy

बग यह copyसोचता था कि "बाइनरी फाइलें" "एएससीआईआई पाठ" फ़ाइल की हैं जब वाइल्डकार्ड स्रोत में उपयोग किए जाते हैं और आप एक गंतव्य नाम निर्दिष्ट करते हैं, यह है!
वैंकेन

1

copyमुझे पता होना चाहिए कि मैं फ़ाइल का प्रकार: "ASCII पाठ" /Aया "बाइनरी फ़ाइल"/B

/Bजब तक आप फ़ाइलों को संयोजित नहीं कर रहे हैं, तब तक एक बाइनरी फ़ाइल मान ली जाती है।
लेकिन विंडोज़ "मान लेता है" जब आप वाइल्डकार्ड को स्रोत में रखते हैं और एक आउटपुट नाम निर्दिष्ट करते हैं जिसे आप फ़ाइलों का संयोजन कर रहे हैं, और "ASCII पाठ" दुभाषिया का उपयोग करें, इसलिए 1K खाली फ़ाइल बना रहा है।

तो सभी गैर "ASCII पाठ" फ़ाइल के निर्दिष्ट आउटपुट नाम के साथ स्रोत में वाइल्डकार्ड का उपयोग करते समय /B पैरामीटर (एक बाइनरी फ़ाइल इंगित करता है)
का उपयोग किया जाना चाहिए

copy /B /D /V *?ample.png %homepath%/example.png

इसे एक बग, एक बेवकूफ Microsoft सुविधा कहें, लेकिन यह जिस तरह से है।

स्रोत


/ B बहुत पहले बदल गया है, जिसका अर्थ है 'लिंक को कॉपी करें न कि उसके लक्ष्य को'। / B ने DOS 6 में अर्थ खो दिया और Windows 95 में अपने नए रूप में फिर से दिखाई दिया, अगर मेरी मेमोरी सही है। उपरोक्त बग विंडोज 7 / x86 में मौजूद है।
माइकल रॉय

लेकिन मुझे आपकी टिप्पणी पढ़ने के बाद / बी स्विच की कोशिश करनी थी। आपको बग का स्रोत मिल गया है! यदि केवल हमारे पास स्रोत कोड होता है .... तो ऐसा लगता है कि एमएस टीम कोड साफ करने में बहुत अच्छी नहीं है। मैं सोचता हूं कि इनमें से कितने रत्न अभी भी घूम रहे हैं।
मिशैल रॉय
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.