Извлечение одного уровня из дерева каталогов
Некоторое время я пытался найти эффективный способ уплотнения больших деревьев каталогов более чем 10 внешних жестких дисков. Я опишу проблему более подробно, чтобы избежать недоразумений (надеюсь) и сэкономить ваше время. Пожалуйста, потерпите меня, я на довольно базовом уровне с моими командами DOS.
Текущая структура:
X: \ [основной каталог] \ [разные каталоги уровня 2] \ [разные каталоги уровня 3] \ [много файлов и подкаталогов]
Желаемая структура:
X: \ [основной каталог] \ [разные каталоги уровня 2] \ [файлы и подкаталоги]
Поэтому я хочу вывести 3-й уровень жирным шрифтом . Я изучал и экспериментировал со всеми предлагаемыми решениями похожих проблем, с которыми я сталкивался в Интернете, от простых команд до пакетных файлов и сценариев VBS, но безуспешно.
Тот факт, что каталоги уровня 3 (а также каталоги уровня 2) имеют разные имена, кажется, значительно усложняет задачу, но я нашел относительно простой способ (Explorer) вручную переименовать все каталоги уровня 2 в то же имя. Так что я могу преобразовать структуру в:
X: \ [основной каталог] \ [разные каталоги уровня 2] \ [XXX] \ [много файлов и каталогов]
С этим (надеюсь полезным) контекстом, где я застрял. После долгих экспериментов я получил следующую команду почти для правильной работы в командной строке:
for / R% i in ("XXX \ . ") сделать xcopy "% i" "% ~ pi .." / S / E
[добавлены пробелы вокруг косой черты]
Оставшаяся проблема заключается в том, что он копирует подкаталоги на самом низком уровне вверх на один уровень, но по какой-то странной причине не файлы, содержащиеся в этих подкаталогах. Есть ли параметр, который решает это?
Однако гораздо более серьезная проблема заключается в том, что мне нужно переместить исходные файлы, потому что жесткие диски почти заполнены и не могут хранить копии всех файлов ...
Основываясь на предложениях, которые я прочитал на форуме, я обратился к ROBOCOPY . Синтаксис, в который я попал:
for / R% i in ("XXX \ . ") делать робокопию / MOVE / S / E "% i" "% ~ pi .."
[добавлено пробелов вокруг косой черты]
К сожалению, это не работает в командной строке (ни в Power Shell, ни в виде командного файла, между прочим, выдавая разные ошибки в каждом случае). Возвращает ошибку
«ОШИБКА 123 (0x0000007B) Доступ к исходному каталогу X: \ основной каталог \ другой уровень каталога 2 \ XXX \ filename.ext \
Неверный синтаксис имени файла, имени каталога или метки тома».
Очевидно, для ROBOCOPY требуются ссылки на каталоги / файлы, отличные от XCOPY. Я экспериментировал с косыми чертами, цитатами и звездочками, но я застрял ... У кого-нибудь есть решение? Большое спасибо!
0 ответов на вопрос
Похожие вопросы
-
12
Почему папка / winsxs становится такой большой и ее можно уменьшить?
-
2
Повышенные привилегии для запуска приложений в Windows?
-
14
PDF Viewer в Windows
-
-
7
Какие службы Windows можно безопасно отключить?
-
8
Firefox PDF плагин для просмотра PDF в браузере на Windows
-
1
Windows теряет макет экрана
-
1
Есть ли способ предотвратить установку / обновление, чтобы засорять мой жесткий диск загадочными пап...
-
1
Как я могу получить доступ к принтеру Windows Vista из Ubuntu по сети?
-
6
Просмотр журнала в Windows
-
3
Фоновая проблема Windows с двумя экранами