带空格的文件名导致缺少操作数

时间:2013-02-10 13:43:30

标签: batch-file operand

尝试制作批处理以显示文件的文件大小。 我在另一篇文章(How can I check the size of a file in a Windows batch script?)中找到了一个(几乎)完美的解决方案,但每当我输入带空格的文件名时,我在“FOR”行上得到“缺少操作数”

我已经实现了这样的批处理:

echo off
set /p title="Enter Film title: " %=%
set sum1=0
set fname="C:\Users\Public\Videos\ripped\%title%.mkv"
FOR /F "usebackq" %%A IN ('%fname%') DO set size=%%~zA
set /a sum1=%size%/1000000
echo Finished %title%.mkv, Size %sum1%Mb

所以,例如,[皇家队]有效,但[真实谎言]没有。我已经尝试了几种引号等组合,但无法使其工作。可能会遗漏一些小东西,但任何人都可以帮忙吗? 谢谢 罗布

1 个答案:

答案 0 :(得分:0)

尝试FOR /F "usebackq tokens=*" %%A IN ('%fname%') DO set size=%%~zA