Пакетный скрипт «Droplet» - имена файлов, содержащие амперсанды
Я пытаюсь создать командный файл, в который могут быть добавлены другие файлы. Конкретно я пользуюсьFFmpeg редактировать аудиофайлы, созданные с помощью портативного диктофона. Проблема заключается в использовании имен файлов с амперсандами (&). Даже при цитировании ввода все, что находится после символа &, удаляется, но только когда на него помещаются файлы; если ввод имени файла вводится в командной строке, скрипт работает нормально. Передcmd
окно закрывается, я кратко вижу остальную часть имени файла с ошибкой, говорящей, что это не распознано как допустимая команда.
Вот мой сценарий:
rem Change to drive and directory of input file %~d1 cd %~p1 rem ffmpeg: mix to one channel, double the volume %HOMEDRIVE%%HOMEPATH%\ffmpeg.exe -i "%~nx1" -ac 1 -vol 1024 "%~n1 fixed%~x1" pause
Вот что появляется в командной строке после сброса"ch17&18.mp3"
:
C:\Users\computergeeksjw\Desktop>C:\Users\computergeeksjw\ffmpeg.exe -i "ch17" -ac 1 -vol 1024 "ch17 fixed" [...] ch17: No such file or directory
В случае, если это имеет значение: я использую Windows 8 Developer Preview. Это вызывает мою проблему? Такая же ошибка возникает в Windows 7 или более ранней версии?