HOME FORUMS MEMBERS RECENT POSTS LOG IN  
× Авторизация
Имя пользователя:
Пароль:
Нет аккаунта? Регистрация
Баннер 1   Баннер 2

ANTICHAT — форум по информационной безопасности, OSINT и технологиям

ANTICHAT — русскоязычное сообщество по безопасности, OSINT и программированию. Форум ранее работал на доменах antichat.ru, antichat.com и antichat.club, и теперь снова доступен на новом адресе — forum.antichat.xyz.
Форум восстановлен и продолжает развитие: доступны архивные темы, добавляются новые обсуждения и материалы.
⚠️ Старые аккаунты восстановить невозможно — необходимо зарегистрироваться заново.
Вернуться   Форум АНТИЧАТ > РАЗРАБОТКА > Для Администратора > Windows
   
 
 
Опции темы Поиск в этой теме Опции просмотра

  #1  
Старый 13.11.2014, 18:19
Denixxx
Участник форума
Регистрация: 07.02.2014
Сообщений: 244
Провел на форуме:
46792

Репутация: 0
По умолчанию

Часто бывала ситуация, когда созданную в плейлисте на компе музыку хотелось бы проиграть на других устройствах с флешки.
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-файлов для таких целей: зоопарк кодировок внутри винды вызывал кракозяблики то в меню скрипта, то в названиях файлов на кириллице.
Если есть решение получше — у кого есть, просьба поделитесь.
 
Ответить с цитированием
 





Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT ™ © 2001- Antichat Kft.