То, что я пытаюсь сделать, - это конвертировать файлы .ogg, хранящиеся в разных папках.Мне нужен пакетный скрипт, чтобы перейти из первой папки и файла, преобразовать его и только потом перейти к следующему файлу в папке.Также в процессе преобразования создается волновой файл, поэтому мне нужно, чтобы он был удален в конце преобразования файлов вместе с исходным файлом .ogg.Это мой код до сих пор.Он проходит через все папки и файлы, выполняя oggdec, создавая огромное количество волновых файлов.Мне нужно, чтобы скрипт выполнял только одну папку и один файл за раз
for /r %%i in (*.ogg) do oggdec "%%i"
for /r %%i in (*.ogg) do del "%%i"
for /r %%i in (*.wav) do lame -m m "%%i"
for /r %%i in (*.wav) do del "%%i"
@echo off
etlocal enabledelayedexpansion
set deletestring=.wav
echo Ready to start
echo.
echo.
for /f "delims==" %%F in ('dir /b /s /a-d ^| find "%deletestring%"') do (
set oldfilename=%%~nxF
set pathname=%%~dpF
set newfilename=!oldfilename:%deletestring%=!
Ren "!pathname!!oldfilename!" "!newfilename!"
)
echo.
echo All done
(
Этот код выше почти работает в том смысле, что конечный результат работает, но, к сожалению, он мне нужен для преобразования только одного файла за рази удалите исходные файлы .ogg и .wav, прежде чем переходить к следующему файлу .ogg. Поэтому мне нужно, чтобы он следовал этому правилу. Возьмите первую папку и первый файл .ogg сделайте oggdec для файла, создав файл .wav del для файла .ogglame -mm для файла .wav, создающего файл .mp3, а затем файл .wav переходят к следующему файлу .ogg, пока все файлы в папке не будут преобразованы, а затем перейдут к следующей папке, которая может отсутствовать в той же папке.Пример структуры папок.
Sounds/voice/greek
Sounds/voice/English
Sounds/voice/russion