Я пытаюсь использовать Cygwin для реорганизации моей музыкальной папки. В настоящее время это в формате iTunes

{Artist}/{Album}/Song ##.mp3

Я хочу скопировать папки альбома в родительскую папку и добавить имя исполнителя, поэтому

~/{Artist}/{Album} становится ~/{Artist} - {Album}

но у меня проблемы с написанием сценария, который работает. Пробовал это:

for i in ~/music/*; { mv $i ~/'basename - $i';}

но безрезультатно. Любая помощь? Спасибо!

1 ответ1

0

пытаться:

cd ~/music
find . -type f | while read i; do album=${i/*\//}; temp=${i/.\//}; artiste=${temp/\/*\/*/}; song=${i/.\/*\/*\//}; mkdir ~/music/$artiste"-"$album; mv $i ~/music/$artiste"-"$album/$song; done 

хотя я бы посоветовал сначала использовать cp вместо mv. на всякий случай ... этот скрипт также не удаляет старые папки.

в основном он читает полный путь к каждому файлу. затем извлеките биты, такие как имя артиста, название песни и название альбома. Затем он манипулирует этой информацией, чтобы дать вам нужный стиль каталога.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .