Denixxx
Мой дом здесь!
- Регистрация
- 7 Фев 2014
- Сообщения
- 244
- Реакции
- 216
- Автор темы
- #1
Часто бывала ситуация, когда созданную в плейлисте на компе музыку хотелось бы проиграть на других устройствах с флешки.
Winamp создаёт плейлист в формате m3u, и внутри его — ссылки на файлы mp3
Однако возникает проблема получить список файлов и скопировать это на флешку.
После того, как жена в 5-й раз попросила обновить на флешке музыку, я задумался об автоматизации этого процесса.
И написал bat-файл для этого.
Вот его код, авось кому ещё пригодится:
Файл ложится в папку с плейлистом.
При запуске запрашивает:
1. Имя плейлиста — например введите sound.m3u
2. Диск куда скопировать файлы из плейлиста, например введите K:
Как работает:
Создает папку с датой на введённом диске типа 13.11.2014 и копирует туда файлы, найденные в плейлисте.
В bat-файлах есть проблемы с их интерпретацией русского текста, поэтому прилагаю архив этого маленького файла. Поскольку тупое копирование текста во вновь созданный файл не поможет, только вдумчивое
Что не получилось сделать, а заодно и возможные проблемы:
1. Не разобрался как писать имя файла с расширением, потому написал в копии — имя файла + жёстко расширение mp3. Буду рад если кто подправит как правильно — копировать первоначальное имя файла с его расширением.
2. Наличие файлов на диске не проверяется. Ни в источнике, ни в назначении.
3. Файлы желательно иметь возможность переименовать в виде 01-исходный_файл.mp3 и далее по порядку. Чтобы на устройствах, которые не поддерживают плейлисты, файлы шли жестко по порядку как в плейлисте. Пока не знаю как сделать.
Задача вроде бы изначально казалась простой, однако при решении сказалась вся убогость bat-файлов для таких целей: зоопарк кодировок внутри винды вызывал кракозяблики то в меню скрипта, то в названиях файлов на кириллице.
Если есть решение получше — у кого есть, просьба поделитесь.
Winamp создаёт плейлист в формате m3u, и внутри его — ссылки на файлы mp3
Однако возникает проблема получить список файлов и скопировать это на флешку.
После того, как жена в 5-й раз попросила обновить на флешке музыку, я задумался об автоматизации этого процесса.
И написал bat-файл для этого.
Вот его код, авось кому ещё пригодится:
Код:
@echo off
Setlocal EnableExtensions
set /p filein=" Введите имя плейлиста: "
set /p disk=" Введите диск куда копировать файлы: "
chcp 1251>nul
set LanguageFlag=true
mkdir "%disk%\%DATE%"
for /f "usebackq delims= eol=#" %%a in ("%filein%") do (
if defined LanguageFlag (chcp 866>nul& set LanguageFlag=)
rem echo %%a
rem echo %disk%\%DATE%\%%~na.mp3
copy /y "%%a" "%disk%\%DATE%\%%~na.mp3"
)
pause
Файл ложится в папку с плейлистом.
При запуске запрашивает:
1. Имя плейлиста — например введите sound.m3u
2. Диск куда скопировать файлы из плейлиста, например введите K:
Как работает:
Создает папку с датой на введённом диске типа 13.11.2014 и копирует туда файлы, найденные в плейлисте.
В bat-файлах есть проблемы с их интерпретацией русского текста, поэтому прилагаю архив этого маленького файла. Поскольку тупое копирование текста во вновь созданный файл не поможет, только вдумчивое
Что не получилось сделать, а заодно и возможные проблемы:
1. Не разобрался как писать имя файла с расширением, потому написал в копии — имя файла + жёстко расширение mp3. Буду рад если кто подправит как правильно — копировать первоначальное имя файла с его расширением.
2. Наличие файлов на диске не проверяется. Ни в источнике, ни в назначении.
3. Файлы желательно иметь возможность переименовать в виде 01-исходный_файл.mp3 и далее по порядку. Чтобы на устройствах, которые не поддерживают плейлисты, файлы шли жестко по порядку как в плейлисте. Пока не знаю как сделать.
Задача вроде бы изначально казалась простой, однако при решении сказалась вся убогость bat-файлов для таких целей: зоопарк кодировок внутри винды вызывал кракозяблики то в меню скрипта, то в названиях файлов на кириллице.
Если есть решение получше — у кого есть, просьба поделитесь.
Вложения
Последнее редактирование: