Я купил USB-ключ, который может читать MP3. К сожалению, у него нет «случайного» режима, поэтому он всегда читает музыку в одном и том же порядке. Я хотел бы рандомизировать это "легко". Для этого я решил регулярно заменять имя каждого файла хэшем предыдущего имени файла (и добавлять .mp3, чтобы не перепутать проигрыватель).
Я привык к bash , а не партия , но я попробовал несколько вещей. Вот как далеко я могу пройти:
for %f in (.\*.mp3) do for /F %i in ('echo %f | hashsum') do @echo move %f %i.mp3
Несколько заметок:
- Я не смог найти способ использовать certutil пакета для генерации хэша случайной строки, поэтому я использую hashsum
- При этом используется один% вместо двух, потому что его еще нет в пакетном скрипте
- Второй цикл for происходит от здесь
- Это не делает то, что я ожидаю. Я получаю сообщение об ошибке, что канал (|) был неожиданным.
Я уверен, что приближаюсь, но две точки все еще неясны:
- Не может ли certutil помочь мне создать хеш строки? (без использования временных файлов)
- Как я могу передать вывод (переданной по каналу) команды в качестве аргумента другой команды?