我正在尝试加快C:\MP3\AudioBooks\The Idea Factory
文件夹中所有mp3文件的速度。我可以这样做任何单独的文件,并取得成功:
sox --show-progress "C:\MP3\AudioBooks\The Idea Factory\002.mp3" "C:\MP3\AudioBooks\The Idea Factory\speedy\002.mp3" tempo 1.3
但是我迷失了cmd-line循环逻辑:
FOR %%I in ("C:\MP3\AudioBooks\The Idea Factory\*.mp3") DO (
echo %%I
echo %~pI
echo %~nI
)
你可以看到我现在只是做回声,不知道如何根据输入路径改变输出路径,无论如何第二和第三回声声明都会爆炸。第一个工作。
最简单的方法是获取文件夹路径输入,遍历所有mp3文件(没有子文件夹,只需mp3),然后只需对每个文件执行我的sox命令,输出mp3进入speedy
子文件夹?
答案 0 :(得分:1)
也许:
For %%I In ("C:\MP3\AudioBooks\The Idea Factory\*.mp3"
) Do sox --show-progress "%%I" "%%~dpIspeedy\%%~nxI" tempo 1.3