Заметки · 21.01.2023

Из всех папок в одну

Буквально перед новым годом попалась мне на глаза давно забытая флеш-карта из фотоаппарата. Карта оказалась всклинь забита фотографиями, бережно разнесёнными фотокамерой по папкам. Одна папка — один день съёмки. И таких дней тогда выдалась — уйма.

Решил разобрать фотографии потоковым режимом и перенести их все в одну папку, а чтобы не делать это вручную (надо же успеть и салаты нарезать, и старый год проводить), обратился к магии PowerShell:

## Папка источник ##
$source="C:\directories"

## Папка назначения ##
$destination="C:\files"

## Перемещение файлов в папку ##
Get-ChildItem -Path $source -Recurse -File | Move-Item -Destination $destination -Force -Verbose -ErrorAction Continue

## Копирование файлов в папку # Опционально ##
# Get-ChildItem -Path $source -Recurse -File | Copy-Item -Destination $destination -Force -Verbose -ErrorAction Continue

Код преспокойно отработал из ISE и за мгновение все фотографии перепарковал в папку назначения.

Для разнообразия добавил и метод копирования файлов без переноса. Только не забудьте вытащить из комментариев копирование и закомментировать перемещение.