Как удалить уровень в файловой структуре в Windows 10

330
Andrew Ostrom

Я искал и нашел несколько старых вопросов и ответов, но у меня ничего не получилось. У меня есть диск с несколькими ТБ фотографий (заядлый фотограф-любитель на протяжении десятилетий). В структуре каталогов есть несколько каталогов, настроенных так, как я хочу, и для многих тысяч каталогов это не так. «Плохие» все это структура:

\top level directory\photos\*.jpg \top level directory\photos\raw\*.nef \top level directory\photos\final\*.* (mostly .jpg files) 

Я хочу избавиться от уровня \ photos и переместить все вверх, но сохранить структуру подкаталогов. Я знаю, что могу сделать это вручную в проводнике, но есть несколько тысяч каталогов верхнего уровня. (Они в свою очередь хранятся в каталогах более высокого уровня, в основном, год за годом и месяц за месяцем.)

Есть ли простой способ сделать это с помощью PowerShell или команды? Я также использую JPsoft Take Command, но, похоже, это не поможет в этом случае.

Спасибо

Было запрошено дальнейшее объяснение, так что здесь идет:

Хорошо, вот РЕАЛЬНАЯ структура:

P:\Photographs\2000\(01) January\lots of folders here\photos\*.* P:\Photographs\2000\(01) January\lots of folders here\photos\raw\*.* P:\Photographs\2000\(01) January\lots of folders here\photos\corrected\*.* P:\Photographs\2000\(02) February\lots of folders here\photos\*.* ... (similar to above, but in February) P:\Photographs\2001\(01) January\lots of folders here\photos\*.* ... (similar, but a different year) 

У меня есть фотографии (отсканированные), сделанные еще в 1969 году, поэтому существует более 500 каталогов год / месяц. В некоторых месяцах нет фотографий, в некоторых есть отдельные снимки с более чем 1000 фотографиями (спортивные события), а в дни съемок фильмов есть каталоги для каждого 36-ти кадрового фильма, обычно я предполагаю месяц / год, если они были отсканированные с негативов, у слайдов есть дата, когда они были обработаны на каждом слайде.

Я запутался, и иногда структура - это то, что мне нужно (т.е. без этого дополнительного уровня без содержимого, кроме подкаталогов, иногда нет. Я могу переместить все хорошие или плохие «деревья» в отдельную папку высокого уровня, или даже на отдельный диск, это массовое переименование безопасным и последовательным способом, который я ищу.

Общая коллекция сейчас составляет ~ 200 000 фотографий и 4 ТБ, которые у меня есть на зеркальных дисках по 6 ТБ, и скоро я перейду к системе FreeNAS.

0
Определенно выполнимо с Powershell. Я действительно сделал что-то подобное (но более сложное) в последнее время. У меня нет времени, чтобы написать это как ответ прямо сейчас, но если у вас не будет ответа в течение нескольких дней, сообщите мне, и я дам вам ответ. На самом деле, для вас это намного проще. Только один для цикла и команда перемещения с использованием .PSPath и .PSParentPath. LPChip 6 лет назад 0
Спасибо, я сделаю некоторые исследования. Я только начинаю с PowerShell, я уверен, что это можно сделать таким образом. Мои дни, когда я писал много сценариев, давно ушли в прошлое, когда технологии давно не используются (VAX и Alpha OpenVMS). Andrew Ostrom 6 лет назад 0
Можете ли вы отредактировать вопрос и предоставить более подробную информацию о папке верхнего уровня, расположенной в разных папках? Это будет необходимо, потому что нам нужно динамически проходить эти папки. LPChip 6 лет назад 0
Хорошо, вот РЕАЛЬНАЯ структура: Andrew Ostrom 6 лет назад 0
Я думаю, что что-то пошло не так, опубликовав реальную структуру. Также, пожалуйста, отредактируйте свой вопрос, не оставляйте его в комментариях, другие пользователи обычно не читают его при публикации ответа. LPChip 6 лет назад 0

1 ответ на вопрос

0
pbies

Вы можете использовать robocopyкоманду Windows . Но нужно исключить photosперемещение папки. Также есть Total Commander или любое другое приложение для работы с файлами, которое вы можете использовать. TC также имеет возможность изменять множество имен файлов одним щелчком мыши - доступным по Ctrl + M. Абсолютно бесплатно является Double Commander.

Стоит отметить, что наличие множества папок и / или файлов в корневой папке диска не очень хорошо подходит для многих операционных систем.

Благодарю. У меня их нет в корневой папке, фактическая структура выглядит примерно так: P: \ Photographs \ 2017 \ (07) июль \ "каталог верхнего уровня" \ photos \ ... Это тот уровень фотографий, который я хочу убить. Я сделал проект массового сканирования и получил дополнительный уровень, и у меня есть ежегодные каталоги с 1973 по 2018 год, а также несколько тематических каталогов для специальных проектов, так что число становится большим. Andrew Ostrom 6 лет назад 0
Тем не менее, вы можете сделать это с помощью TC и его опции, чтобы выбрать файлы с помощью `wildcards`. Перемещение всех папок из одной папки в папку на два уровня также доступно в проводнике Windows - окне по умолчанию для файлов. Для этого вы можете использовать два окна проводника - источник и цель. pbies 6 лет назад 0
Использование проводника Windows заставляет меня ДЕЙСТВИТЕЛЬНО нервничать - у меня такое много раз происходило сбои в середине процесса, а затем вы частично перемещали вещи, и это может быть трудно раскрутить. Конечно, я скопирую весь диск перед запуском на запасной шпиндель 6TB. Andrew Ostrom 6 лет назад 0
Сбои проводника - повод для проверки оперативной памяти. Исследователь не нормальный сбой. Зависит от сообщения об ошибке. pbies 6 лет назад 0

Похожие вопросы