كيفية نسخ الملفات من شجرة مجلد إسقاط جميع المجلدات مع Robocopy؟

StackOverflow https://stackoverflow.com/questions/1502170

سؤال

لدي هيكل المجلد التالي:

foldera.
--folder1.
--folder2.
--folder3.
...
--foldr99.

المجلدات 1 إلى 99 لها ملفات فيها.

كل ما أريد القيام به هو نسخ جميع الملفات إلى مجلد واحد، قم بشكل أساسي بنسخة Foldera، وقم بمسح مجلدات 1-99 حفظ جميع الملفات.

أرغب في القيام بذلك مع Robocopy من cmd.exe إذا كان ذلك ممكنا (Windows Server 2008)

هل كانت مفيدة؟

المحلول

لماذا الاستخدام robocopyب إنها أداة جيدة لمهمة محددة ولكن هذا ليس هو واحد.

يمكنك ببساطة استخدام ما cmd يمنحك بالفعل:

for /r %f in (*) do @copy "%f" target

سيؤدي هذا في الأساس إلى "تسلية" دليلك هرمي. for /r سوف تمشي شجرة دليل متكررة، تبحث عن أسماء الملفات مطابقة نمط معين. يمكنك أيضا تحديد الدليل للبدء في:

for /r FolderA %f in (*) do @copy "%f" target

ضمن الحلقة إنها مجرد نسخة فقط من الملف في مجلد محدد.

نصائح أخرى

Robocopy هي أداة رائعة ... عندما يكون لديك وظيفة يمكن التعامل معها. لماذا لا تستخدم Xcopy؟

إذا كان لديك محركين، فيمكنك فقط استخدام Xcopy:

XCOPY  C:\*.*  D:\NewFolder\   /S

أو استخدام xxcopy لمحرك الأقراص واحد:

XXCOPY C:\*.*  C:\NewFolder\   /S /CCY

XXCOPY.

Get-ChildItem -Path source -Recurse -File | Move-Item -Destination dest
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top