|
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - [решено] Оставить рандомный файл в папках |
|
|
CMD/BAT - [решено] Оставить рандомный файл в папках
|
Новый участник Сообщения: 16 |
Добрый день. Помогите пожалуйста. Требуется рукурсивно оставить в подпапках один рандомный файл (все файды - jpg), а остальные удалить. Желательно, но не обязательно, с указанием корневой папки. То есть, указываем имя папки и изо всех подпапок удаляются все файлы кроме одного рандомного. Заранее спасибо.
|
|
Отправлено: 08:54, 02-01-2018 |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать MI-5, глубинный смысл сего действа?
|
Отправлено: 09:05, 02-01-2018 | #2 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Новый участник Сообщения: 16
|
Профиль | Отправить PM | Цитировать Iska, Есть десять тысяч папок, в каждой по сто-двести файлов. Надо оставить по одному примеру изображения из каждой папки, а остальные удалить. А просматривать миллион изображений вручную нет никакого ни желания, ни времени.
|
Отправлено: 09:16, 02-01-2018 | #3 |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать MI-5, это ни о чём. Зачем в таком случае нужно вообще что-то оставлять?! Shift-Del, и дело с концом.
Пока что неубедительно. |
Отправлено: 09:56, 02-01-2018 | #4 |
Новый участник Сообщения: 16
|
Профиль | Отправить PM | Цитировать Iska, Ну проблема у меня такая. Надо мне оставить один файл в каждой подпапке. Чтобы нажать Shift+Del, надо зайти в каждую из десяти тысяч папок, нажать Ctrl+A, а потом снять выделение с одного файла, а уж только после всего этого нажать Shift+Del. Это то же самое, что вручную просмотреть все эти папки. Я не пытаюсь никого ни в чём убедить - зачем мне это надо? Мне надо решить стоящую передо мной проблему - я спросил здесь.
Я нашёл решение, позволяющее переместить рандомный файл из папки в другую папку: mix2stix. Но это не рекурсивно и мне надо в дальнейшем каждый оставшийся файл переименовать в название родительского каталога. Но это уже в дальнейшем вручную будет. Сейчас же вопрос стоит как оставить один файл в папке. |
|
Отправлено: 10:02, 02-01-2018 | #5 |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать Цитата MI-5:
Цитата MI-5:
Цитата MI-5:
|
|||
Отправлено: 10:38, 02-01-2018 | #6 |
Новый участник Сообщения: 16
|
Профиль | Отправить PM | Цитировать Я делаю раздачу на трекер. По одному файлу в каждой папке надо для примеров.
Цитата Iska:
|
|
Отправлено: 10:48, 02-01-2018 | #7 |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать Цитата MI-5:
На PowerShell: Скрытый текст
$sSourceFolder = 'C:\Мои проекты\0142' $sDestFolder = 'C:\Мои проекты\0143' if(Test-Path -Path $sSourceFolder -PathType Container) { @(Get-Item -Path $sSourceFolder) + (Get-ChildItem -Path $sSourceFolder -Directory -Recurse) | ` ForEach-Object -Process { $cFiles = $_.GetFiles() if($cFiles.Count -gt 0) { $sNewFolder = $_.FullName.Replace($sSourceFolder, $sDestFolder) $oNewFolder = New-Item -ItemType Directory -Path (Split-Path -Path $sNewFolder -Parent) -Name (Split-Path -Path $sNewFolder -Leaf) $oFile = $cFiles[$(Get-Random -Maximum ($cFiles.Count - 1))] New-Item -ItemType HardLink -Path $sNewFolder -Name $oFile.Name -Value $oFile.FullName | Out-Null } } } Затем можете начинать раздавать новосозданную структуру каталогов с одиночными случайными файлами. |
|
Последний раз редактировалось Iska, 02-01-2018 в 12:20. Отправлено: 12:14, 02-01-2018 | #8 |
Ушел из жизни Сообщения: 8595
|
Профиль | Сайт | Отправить PM | Цитировать Цитата Iska:
![]() |
|
------- Отправлено: 12:41, 02-01-2018 | #9 |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать mwz, всяко может быть. Про torrent удалось вытянуть токмо к седьмому сообщению. Попробуй разберись тут
![]() Цитата mwz:
![]() |
|
Отправлено: 13:21, 02-01-2018 | #10 |
|
![]() |
Участник сейчас на форуме |
![]() |
Участник вне форума |
![]() |
Автор темы |
![]() |
Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
VBS/WSH/JS - [решено] скрипт, который создаст текстовый файл и запишет в него инфу о всех папках | daniil_im | Скриптовые языки администрирования Windows | 1 | 19-09-2017 19:08 | |
CMD/BAT - [решено] Рандомный VolumeID | Freem | Скриптовые языки администрирования Windows | 8 | 05-01-2016 16:26 | |
CMD/BAT - [решено] Переименовать каждый первый файл в папках | MI-5 | Скриптовые языки администрирования Windows | 4 | 22-12-2015 19:18 | |
CMD/BAT - [решено] Вывод в файл имен последних файлов в папках | ivanxam | Скриптовые языки администрирования Windows | 2 | 01-10-2013 13:26 | |
CMD/BAT - Рандомный запуск на CMD | AlexPebody | Скриптовые языки администрирования Windows | 3 | 30-08-2013 10:25 |
|