У меня был скрипт, который преобразует все mkvs в папку в mp4s, используя ffmpeg
. Недостатком является то, что он оставил расширение .mkv и просто добавил .mp4 (например: file.mkv.mkp4
). Я знаю, что %~n
можно использовать для получения имени без расширения, но я не могу понять, как это понять.Получение имени файла из for %% i переменной
Вот мой оригинальный сценарий:
for %%i IN (*.mkv) DO (ffmpeg -y -ss 00:00:00 -threads 6 -i "%%i" -vcodec copy -f mp4 -strict experimental -acodec aac -ab 128k -ac 2 "%%i.mp4")
Вот что я пробовал:
for %%i IN (*.mkv) DO (ffmpeg -y -ss 00:00:00 -threads 6 -i "%~ni.mkv" -vcodec copy -f mp4 -strict experimental -acodec aac -ab 128k -ac 2 "%~ni.mp4")
Боже мой, я чувствую себя глупо. Благодаря! – nysos3
Эта ссылка мертва, правильное местоположение: technet.microsoft.com/en-us/library/bb490869.aspx – MarcusJ
@MarcusJ На самом деле это technet.microsoft.com/en-us/library/bb490909.aspx, но спасибо за хедз-ап. Исправлена. –