1

У меня есть структура каталогов, которая выглядит следующим образом:

(root) – Folder1  – Folder2  – file3
                             – file4
                             – file5
                                 ︙
       – Folder11 – Folder12 – file13
                             – file14
                             – file15
                                 ︙
            ︙

Т.е., Folder1, Folder11, Folder21,… каждый содержит только один подкаталог. Эти подкаталоги (Folder2, Folder12, Folder22, ...) не имеют смысла. Я хотел бы переместить файл 3, файл 4, файл 5, ... в папку 1, а затем удалить пустую папку 2. И затем повторите по всему дереву; например,

(root) – Folder1  – file3
                  – file4
                  – file5
                      ︙
       – Folder11 – file13
                  – file14
                  – file15
                      ︙
            ︙

Делать это вручную нецелесообразно, потому что у меня есть сотни или тысячи таких папок. Я уже знаю, "Удалить пустую папку", которая отлично подходит для удаления пустых папок, но это не то же самое.

Как бы я мог легко объединить их в системе Windows 7?

1 ответ1

0

Вы можете сделать это с помощью CMD (я удалил пробел из "папки 1", чтобы упростить пример, исключив необходимость в кавычках.):-

c:
cd \folder1
for /r %f in (*) do move /-y %f \folder1\
for /d %f in (*) do rd /s /q %f

Было бы безопаснее создать новую папку назначения и переместить туда файлы: как только вы убедились, что все файлы были перемещены (с помощью dir /s), удалите \folder1 (с помощью rd /s) и переименуйте (используя move) новая папка обратно в \folder1: -

c:
md \newfolder1
cd \folder1
for /r %f in (*) do move /-y %f \newfolder1\
dir /s
rem If the previous command shows no files then proceed with:-
cd \
rd /s /q \folder1
move \newfolder1 \folder1

Обратите внимание, что будут подсказки, если имена будут дублироваться в разных подкаталогах (я включил /-y в команду перемещения на случай, если вы когда-нибудь поместите команды в командный файл).

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .