2012-05-28 2 views
-1

Я хочу, чтобы скопировать все файлы с расширением .txt, которые могут быть в подпапках или в основной папке (источник) к месту назначения основной папкекопия .h файлы (только) образует вложенные папки основной папки в новую папку с помощью ЦМДА

т.е. E: \ source \ sub1 \ sub11 или E: \ source \ sub2 или E: \ source \ to d: \ test folder.

Здесь я хочу скопировать только файлы .txt, там нет папки в папку назначения.

У меня есть много вариантов, предложенных на этом форуме. Я не могу игнорировать вспомогательные папки.

Пусть я .txt файл в E: \ источник \ sub1 \ sub11 когда уставал copy.txt файла в папку назначения, то иерархия в папке назначения будет D: \ тестовой папки \ sub1 \ sub11

здесь я хочу, чтобы скопировать в основную папку D: \ тест папку не D: \ тест папку \ sub1 \ sub11

Пожалуйста, может ли один помочь мне здесь

заранее спасибо

+0

Предполагая, что это Windows cmd, которую вы хотите использовать, а не C++, как вы предлагаете в тегах? Кроме того, какие команды вы пробовали? – Chris

+0

изменил тег на windows-shell, так как C++ не имеет никакого отношения к его вопросу – akappa

+0

Что вы ожидаете, если в двух исходных подпапках существуют 2 разных версии 'file.txt'? В папке назначения может существовать только одна версия. – dbenham

ответ

0

Вы можете использовать команду FOR копировать рекурсивно каждый файл по отдельности:

for /r e:\source %a in (*.txt) do @copy "%a" "d:\test folder\" 

(Вы должны использовать %%a вместо %a, если команда находится внутри пакетного файла).

+0

Возможно, вам следует использовать * .h вместо * .txt, то есть, если OP может выяснить, какие требования действительно существуют. – dbenham

+0

Я устал от этой команды. С другой опцией. Но не работал, возможно, я использовал неправильные формы. Спасибо за ваш ценный вклад в эту тему – user1421582