![]() |
Оставить рандомный файл в папках
Добрый день. Помогите пожалуйста. Требуется рукурсивно оставить в подпапках один рандомный файл (все файды - jpg), а остальные удалить. Желательно, но не обязательно, с указанием корневой папки. То есть, указываем имя папки и изо всех подпапок удаляются все файлы кроме одного рандомного. Заранее спасибо.
|
MI-5, глубинный смысл сего действа?
|
Iska, Есть десять тысяч папок, в каждой по сто-двести файлов. Надо оставить по одному примеру изображения из каждой папки, а остальные удалить. А просматривать миллион изображений вручную нет никакого ни желания, ни времени.
|
MI-5, это ни о чём. Зачем в таком случае нужно вообще что-то оставлять?! Shift-Del, и дело с концом.
Пока что неубедительно. |
Iska, Ну проблема у меня такая. Надо мне оставить один файл в каждой подпапке. Чтобы нажать Shift+Del, надо зайти в каждую из десяти тысяч папок, нажать Ctrl+A, а потом снять выделение с одного файла, а уж только после всего этого нажать Shift+Del. Это то же самое, что вручную просмотреть все эти папки. Я не пытаюсь никого ни в чём убедить - зачем мне это надо? Мне надо решить стоящую передо мной проблему - я спросил здесь.
Я нашёл решение, позволяющее переместить рандомный файл из папки в другую папку: mix2stix. Но это не рекурсивно и мне надо в дальнейшем каждый оставшийся файл переименовать в название родительского каталога. Но это уже в дальнейшем вручную будет. Сейчас же вопрос стоит как оставить один файл в папке. |
Цитата:
Цитата:
Цитата:
|
Я делаю раздачу на трекер. По одному файлу в каждой папке надо для примеров.
Цитата:
|
Цитата:
На PowerShell: Скрытый текст
Код:
$sSourceFolder = 'C:\Мои проекты\0142' Затем можете начинать раздавать новосозданную структуру каталогов с одиночными случайными файлами. |
Цитата:
|
mwz, всяко может быть. Про torrent удалось вытянуть токмо к седьмому сообщению. Попробуй разберись тут :). Не хочется гадать.
Цитата:
|
Спасибо за PowerShell. Приду домой - попробую. Исходные файлы не нужны. Примеры нужны только чтобы залить на тот же fastpic.ru. В крайнем случае, забекаплю исходные каталоги. Просто честно не понимаю - какое значение имеет написание тут цели всех этих операций!
|
Цитата:
|
Iska, простите - не понял. Запускаю в PowerShell, создаётся структура папок и всё. А где сами файлы?
|
Цитата:
Выполнять инструкцию нужно пошагово и точно: основные пункты настроек выделены желтым цветом, секции, возле которых стоит номер, должны соответствовать скринам. Этап номер 1
![]() Перед тем, как нажать кнопочку переименовать, не забудьте: Action - Select All Этап номер 2
![]() Перед тем, как нажать кнопочку переименовать (на этом этапе переместить в нужную вам папку, пункт 2 на скрине), не забудьте: Action - Select All Все. В исходном каталоге осталось то, что вам нужно. Перемещенное можете удалить в два клика. |
Казбек, Чёрт ногу сломит с рандомным выбором. В предложенном Вами варианте получаем в итоге первый файл в папке с именем 9. Пока через раз получается (Action-Random Sort), но это как-раз то, что нужно. Думаю, на десятитысячной папке привыкну)) Спасибо.
|
|
Iska, Просто названия исходных папок. Папки пустые. К примеру, были папки 1,2,3. В результате выполнения скрипта в результирующей папке создаются те же самые пустые папки 1,2,3, но пустые. Удаляю исходные - просто удаляются. Уж и Windows Management Framework, и PowerShell обновлял - безрезультатно. Ну да ладно. Делаю по инструкции Казбека. Спасибо за помощь.
Там у Казбека я делаю даже проще: просто переименовываю не сквозной нумерацией, потом в Total Commander'e Ctrl+B и удаляю все не девятки. В итоге остаётся по одному искомому файлу в папке. Задача решена. |
MI-5, я просил:
Цитата:
|
Iska, Код копипастил у Вас с первой страницы. Скрипт выполняется без ошибок, но папки пустые. Всё, опытным путём удалось установить, что проблема в квадратных скобках в имени подпапок. Если заменить на круглые или совсем удалить - скрипт работает правильно. Ещё раз спасибо.
|
MI-5, оттого-то я и просил Ваш код и процесс исполнения, дабы увидеть Ваши пути.
|
Время: 19:06. |
Время: 19:06.
© OSzone.net 2001-