2012-01-21 9 views
0

Я пытаюсь переместить обложку альбома из моей библиотеки (сохраненной как albumart.jpg) с моего компьютера на свой телефон. Однако вся музыка на моем телефоне в формате FLAC, чтобы сохранить пространство, я преобразовал его в MP3 для использования на телефоне. Вместо того, чтобы копировать каждый обложки альбомов вручную, я подумал, что это может быть автоматизировано в PowerShell.копирование файлов из одной директории в другую

Структура d: \ music \ library \% artist% \% album% на моем компьютере, и на моем телефоне это должно быть e: \ media \ music \% artist% \% album%.

Я знаю, что я должен фильтровать результаты с Get-ChildItem D: \ музыки \ библиотеки -recurse * .jpg и я верю, что нужно какое-то сумасшедшая ForEach что присоединяет \% художник% \% альбом % \ в указанный каталог.

Это что-то вроде этого осуществимо или это нужно сделать вручную.

Спасибо, ребята!

ответ

3

-replace будет делать магию.

ls "D:\Music\Library" -r -i *.jpg | % {cp -force $_ ($_ -replace "D:\\Music\\Library", "D:\\Music\\mp3")} 

(Если вам необходимо создать структуру каталогов одновременно, добавьте -force переключатель в cp команду.)

+0

Эй Grapeot, я получаю «InvalidOperation: (D: \ Music \ Library: String) [ ], RuntimeException ". Сценарий, который я запускал, был ** ls "D: \ Music \ Library" -r -i * .jpg | % {cp -force $ _ ($ _ -replace "D: \ Music \ Library", "D: \ Music \ mp3")} **. Это, вероятно, легкое исправление, но я не слишком хорошо знаком с powershell, статьи по технике не помогли мне :( – smierdziel

+0

Это странно ... Может быть, вы попытаетесь поместить ключ '-force' в конец после круглых скобок Если ошибка все еще существует, не могли бы вы предоставить все сообщение об ошибке, особенно информацию о местоположении, такую ​​как 'At line: 1 char: 3'? – grapeot

+0

Недопустимый шаблон регулярного выражения: D: \ Music \ Library. В строке: 1 char: 65 + ls 'D: \ Music \ Library' -r -i * .jpg |% {cp -force $ _ ($ _ -replace <<<< 'D: \ Music \ Library', 'D: \ Music \ mp3 ')} + CategoryInfo: InvalidOperation: (D: \ Music \ Library: String) [], RuntimeException + FullyQualifiedErrorId: InvalidRegularExpression – smierdziel

Смежные вопросы