我正在尝试编写一个脚本,它将获取特定目录中的所有mt .avi文件,在每个文件之后重命名该目录,并在循环中调用另一个脚本: (目录的名称是输入)
cd /D %1
dir *.avi > avi.list
set x=%1
set z=%1
cd ..
FOR /F "tokens=1-5" %G IN (avi.list) DO (
@set y=%K
rename %x% %y%
set x=%y%
C:\indexer\Indexer.exe %y%
)
rename %y% %z%
cd /D %z%
del avi.list
谢谢!
答案 0 :(得分:0)
%G和%K都需要在批处理文件中为%% G和%% K.
如果文件名包含空格或其他尴尬字符,您还需要双引号。
有更好的方法来获取文件名和路径(仅添加文件名):试试这个
@echo off
cd /d "%~1"
for /f "delims=" %%a in (' dir *.avi /b /a-d ') do (
echo filename without extension is "%%~na"
echo name is "%%~nxa"
echo filepath is "%%~dpa"
pause
)
在cmd提示下,请阅读以下帮助: FOR /?,最后一页是修饰符列表。