Как удалить уровень в файловой структуре в Windows 10
330
Andrew Ostrom
Я искал и нашел несколько старых вопросов и ответов, но у меня ничего не получилось. У меня есть диск с несколькими ТБ фотографий (заядлый фотограф-любитель на протяжении десятилетий). В структуре каталогов есть несколько каталогов, настроенных так, как я хочу, и для многих тысяч каталогов это не так. «Плохие» все это структура:
Я хочу избавиться от уровня \ 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.
Определенно выполнимо с 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