Состояние после для l oop (партия / CMD) - PullRequest
0 голосов
/ 18 января 2020

Таким образом, в настоящее время у меня есть этот пакет, который преобразует каждый .MTS в текущей папке в .MP4, используя ffmpeg, однако, когда это будет сделано, я получаю и .mp4 и .mts в папке. У меня есть 2 пакета, один для преобразования файлов и другой для удаления ненужных файлов впоследствии, но у меня возникают проблемы при попытке присоединить их в одном пакетном скрипте.

Converter.bat:

for %%i in (*.MTS) do ffmpeg -i "%%i" -c:a libfdk_aac -b:a 256k "%%~ni.mp4"

Delete.bat:

del /S *.MTS

Любая помощь, пожалуйста?

1 Ответ

1 голос
/ 18 января 2020

, чтобы "присоединиться к ним в пакетном скрипте", просто запишите их в тот же пакетный скрипт:

@echo off
for %%i in (*.MTS) do ffmpeg -i "%%i" -c:a libfdk_aac -b:a 256k "%%~ni.mp4"
del /S *.MTS

Хотя я бы порекомендовал:

@echo off
for %%i in (*.MTS) do ffmpeg -i "%%i" -c:a libfdk_aac -b:a 256k "%%~ni.mp4" && del /S "%%i"

&& означает " делать следующее только в том случае, если предыдущий был успешным », поэтому файл будет удален только после успешного преобразования.

(пересмотреть del /s - он удалит файл в текущей папке и всех подпапках. Простой del "%%i" удалит только обработанный файл и сохранит файлы во всех подпапках)

...