我想逐个将目录中的文件(电影)进行转换。每个新的转换文件都需要分配一个新的文件名-旧文件名与新扩展名。
我尝试了以下代码来读取源文件,去掉扩展名并指定一个新的扩展名:
我尝试了以下代码来读取源文件,去掉扩展名并指定一个新的扩展名:
@echo off
setlocal DisableDelayedExpansion
cd \target_dir
for %%x in (*) do (
echo %%x
set source=%%x
echo Source #%source%#
set target=%source:.mpg=%
echo Target #%target%#
transcode %source% %target%.mp4
)
很遗憾,这个方法不起作用。正如输出所示,我甚至无法将当前文件复制到变量“source”中:
E:\target_dir>..\test.bat
movie1.mpg
source ##
target ##
movie2.mpg
source ##
target ##
我在谷歌上搜索了一下,认为我已经找到了正确的语法,但似乎并不是那样。感谢任何帮助!