У меня есть большая коллекция телевизионных сериалов, сидящих на ящике NAS, которая делится средствами массовой информации через самбу и dlna по всему дому. Чтобы включить случайную функцию, я создал пакетный сценарий следующим образом, чтобы сделать файл список воспроизведения:Вывод команды DIR не так, как ожидалось, в пакетном файле
@Echo Off
color 0e
Echo PLEASE WAIT, BUILDING PLAYLIST FILE, EXCLUDING ALL BAT, TXT, M3U, SRT and JPG FILES
del "playlist.m3u"
Setlocal EnableDelayedExpansion
set _tmp=%1
Set _t0=1
If ["%CD%"]==["%CD:~0,3%"] Set _t0=0
For /F "tokens=*" %%A In ('Dir "%*" /a-d /b /on /s ^|find /v ".bat"^| find /v ".m3u"^|find /v ".txt"^| find /v ".srt"^|find /v ".jpg"') Do (
Set _t1=%%A
Set _t2=!_t1:%CD%=!
Echo !_t2:~%_t0%!)>>playlist.m3u
Итак, у меня есть один из этих пакетных файлов в каждом каталоге (по одному на ТВ-шоу), а также родительскую папку (TV), и мои пользователи могут включить произвольный выбор в WMP, VLC или w/e-проигрывателе, который им нравится, и просто щелкнуть плей-лист, чтобы посмотреть случайное что-либо, или, более конкретно, случайный эпизод определенного шоу.
Итак, на мой вопрос: почему мой трубчатый выход не в алфавитном порядке? Я действительно хочу выполнить это в MS-DOS/CMD, поскольку программирование - это не мой опыт, и это в значительной степени ограничивает мои возможности сценариями или чем-либо еще. Я полагаю, что команда FIND может использоваться более элегантно, чтобы отфильтровать определенные типы файлов, и я подозреваю, что в этом мои проблемы возникают при попытке сортировки вывода. Даже плейлисты, предназначенные для шоу, по-видимому, имеют случайный порядок сортировки (файлы в сезонах являются алфавитными, но сезонный порядок кажется случайным). Мне также было интересно, может ли кто-нибудь пролить свет на получение папок с «&» во имя, не нарушающее вывода.
Любая помощь будет оценена по достоинству.
-T.J.
1. Я люблю случайный, когда я нахожусь в постели и беспокойный, но мой партнер и я будем выпивать сезон в дождливое воскресенье, если мы действительно влюбимся в серию. Следующая структура каталогов, например: «Z: \ md0 \ Video \ TV \ Игра престолов \ Сезон 1 \ S01E01 - Зима .... avi» Оцените быстрый ответ, верните сообщение, как только сможете. -T.J. – tjs4ever