我已经研究出如何使用 WinXP 中的命令行工具通过 VLC 将 wav 转换为 mp3。
'vlc "C:\temp\Britney Spears - California Uber Alles.wav" :no-video :sout=#transcode{acodec=mp3,ab=256}:std{access=file,mux=dummy,dst="c:\temp\Britney Spears - California Uber Alles.mp3"} vlc://quit'
有没有办法可以替换文件名,例如 %1,以便输出名称与输入名称相同(显然,扩展名除外)。谢谢。
答案1
是的,我可能没有为每种情况都设置完美的双引号,但您可以根据需要自定义它。请注意,%~1 将删除引号,而 %1 将保留引号。您也可以在批处理文件中添加引号,可能在 %~1 周围或您想要的任何位置。
您也可以删除 echo 行,它们只是为了向您演示 %~dnp1 的概念
密钥是 %~dpn1 而不是 %1
下面是一个名为 a.bat 的 bat 文件的示例,你可以调用
C:\>a.bat "C:\temp\Britney Spears - California Uber Alles.wav"
注意,有两个 vlc 调用,一个显示你的一个,另一个显示 %1 或 %~dpn1
我把两者都包括进来只是为了演示,以便您能看见。
调用 /? 来查看 %1 的变化,例如我如何发现 %~dpn1
echo %1
echo %~dnp1
echo a.bat blah.wav
vlc "C:\temp\Britney Spears - California Uber Alles.wav" :no-video :sout=#transcode{acodec=mp3,ab=256}:std{access=file,mux=dummy,dst="c:\temp\Britney Spears - California Uber Alles.mp3"} vlc://quit
vlc %1 :no-video :sout=#transcode{acodec=mp3,ab=256}:std{access=file,mux=dummy,dst="%~dnp1.mp3"} vlc://quit