带有空格的文件名导致缺少操作数
Posted
技术标签:
【中文标题】带有空格的文件名导致缺少操作数【英文标题】:file name with Space causing missing operand 【发布时间】:2013-02-10 13:43:29 【问题描述】:尝试进行批处理以显示文件的文件大小。 我在另一篇文章 (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
例如,[Royals] 有效,但 [True Lies] 无效。我尝试了几种引号等组合,但无法使其正常工作。可能缺少一些小东西,但有人可以帮忙吗? 谢谢 抢
【问题讨论】:
【参考方案1】:试试FOR /F "usebackq tokens=*" %%A IN ('%fname%') DO set size=%%~zA
【讨论】:
谢谢,是的。我刚刚通过删除 usebackq 找到了另一种方法: (FOR %%A IN (%fname%) DO set size=%%~zA) 但不确定这是否会导致问题,所以我会使用你的。非常感谢 请接受他的回答(绿色勾号)以表明您的问题或疑问已得到解答。 @Kay 有时我不知道自己在想什么。以上是关于带有空格的文件名导致缺少操作数的主要内容,如果未能解决你的问题,请参考以下文章