2012-03-01 9 views
9

से फ़ाइलों को स्थानांतरित करना मेरे पास 15,000 फ़ाइलों के साथ विंडोज़ शेयर पर एक निर्देशिका है। मैं क्या चाहता हूं 500 फाइलों को एक नई निर्देशिका में ले जाया गया है।कमांड लाइन

क्या कमांड लाइन से ऐसा करने का कोई तरीका है?

उत्तर

14

आपके पास आवश्यक कोड है। इसे एक .bat फ़ाइल के रूप में सहेजा और इसे चलाएं:

echo off 
SETLOCAL EnableDelayedExpansion 
set movedFiles=0 
for /R c:\sourceFolder\ %%G in (*) do (
    echo moving... "%%G" 
    move /Y "%%G" c:\destinationFolder\ 
    set /a movedFiles+="1" 
    if !movedFiles! EQU 500 GOTO endOfCopy rem if you moved 500 files 
) 
    :endOfCopy 
    echo Done, %movedFiles% files Where copied successfully 
    pause 
ENDLOCAL 
+0

प्रतिक्रिया के लिए धन्यवाद – Villumanati

1

निश्चित रूप से, उचित आदेश को चाल कहा जाता है। वाक्य रचना इस तरह दिखता है:

MOVE [/Y | /-Y] [drive:][path]filename1[,...] destination 

आप की तरह कुछ लिखते थे:

move Z:\directory\*.* c:\newdirectory 

लेकिन सवाल सुपर उपयोगकर्ता के लिए अधिक उपयुक्त है।

+0

लेकिन आप कॉपी की गई फ़ाइलों की संख्या को कैसे नियंत्रित करते हैं? – Villumanati

+0

@ विल्लुमानती ऐसा लगता है कि मैं आपके प्रश्न को सही नहीं समझ पाया। क्या आप जानते हैं कि आप कौन सी 500 फाइलों को स्थानांतरित करना चाहते हैं, या आप सिर्फ 500 को सीमित करना चाहते हैं? – ipavlic

+0

यह प्रश्न विंडोज 7 को टैग किया गया है जो 'MOVE' कमांड का समर्थन नहीं करता है। – cyroxx

8

आपको इस तरह की कुछ चीज़ चाहिए। ईजी।
move c:\windows\temp\*.* c:\temp

+0

यह प्रश्न विंडोज 7 को टैग किया गया है जो 'MOVE' कमांड का समर्थन नहीं करता है। – cyroxx

+2

@cyroxx 'move' विंडोज 7 पर समर्थित है। – ipavlic

0

कमांड के लिए कोई विकल्प नहीं है जो "पहली 500 फाइलों को स्थानांतरित करें" कहता है। यदि आप ऐसा कुछ करना चाहते हैं तो आपको कुछ प्रकार की स्क्रिप्टिंग भाषा की आवश्यकता होगी। Batch विंडोज कमांड लाइन में मूल स्क्रिप्टिंग भाषा है, लेकिन यह बोझिल है। Powershell माइक्रोसॉफ्ट की नवीनतम स्क्रिप्टिंग भाषा है, यह बहुत शक्तिशाली होना चाहिए।