[identity profile] higr.livejournal.com posting in [community profile] useful_faq
Есть 2 миллиона фотографий в одной папке. Хочу их разбить на 2000 папок, по 1000 фоток в папке.

Существует ли программа для windows7, способная на такое? Подскажите программу?

Можно вручную через total commander переносить, но очень долго. Хотелось бы автоматизировать.

upd Папка с картинками, отсортированными по имени файла. Никаких сходных признаков, по которым картинки можно отобрать - нет. Имена файлов вообще любые, такой порядок: 1, 5, 34, 1256, d24, gyr, r27. exif у половины фоток нет (потому что из инета). Расширение у всех jpg или jpeg.

Date: 2016-01-10 07:01 pm (UTC)
From: [identity profile] denisioru.livejournal.com
1. сохранить под именем например copy-files.ps1 в каталоге в котором тысячи файлов:

$baseDir="p:\y"
$files=Get-ChildItem -Path "." -Filter *.jpg -File
$count=30;

for($i=0; $i -lt $files.Count; $i+=$count)
{
New-Item "$baseDir\$i" -ItemType Directory -ErrorAction SilentlyContinue
for($k=0; $k -lt $count; $k++)
{
$fileName=$files[$i+$k].Name;
Move-Item -Path "$fileName" -Destination "$baseDir\$i"
}
}

2. заменить P:\y на путь КУДА будут копироваться файлы и создаваться подкаталоги ($count - количество в одном каталоге)
3. с правами админа выполнить команду:

powershell -Command Set-ExecutionPolicy RemoteSigned

4. выполнить файл powershell -File copy-files.ps1

в $baseDir будут созданы подкаталоги и в них распиханы файлы в порядке сортировки на диске (в NTFS это по алфавиту)

Date: 2016-01-11 10:21 am (UTC)
From: [identity profile] irq-a.livejournal.com
Может, -Name? Я с PS не работал, но в бегло просмотренной документации по этой функции нет параметра -File. А -Name как раз возвращает список файлов в виде имён в текущей папке (аналог dir *.jpg /b).

https://technet.microsoft.com/ru-ru/library/hh849800.aspx

Date: 2016-01-11 10:42 am (UTC)
From: [identity profile] irq-a.livejournal.com
Ну если ошибка исчезла, то значит что-то поменялось. А уж что дальше, я не подскажу :)

Date: 2016-01-11 10:39 am (UTC)
From: [identity profile] denisioru.livejournal.com
я же написал как запустить:

powershell -File copy-files.ps1