【问题标题】:Why won't my script remove files from folder larger than 1 mb?为什么我的脚本不会从大于 1 mb 的文件夹中删除文件?
【发布时间】:2016-05-18 17:02:16
【问题描述】:

我正在编写一个批处理文件以从我桌面上的文件夹中删除大于 1 MB 的文件。但是在运行脚本时,它会删除随机项,而不是超过 1mb 的项。我的脚本写错了吗?

for /R %%X in (C:\Users\TSwanson\Desktop\WorkSite) DO (
    IF %%~zX GTR 1024KB (ECHO DELETING "%%X"
    DEL /X "%%X"))
pause >Nul

【问题讨论】:

  • 用户 npocmaka 在his answer 中是正确的,但您还需要考虑到,数字比较仅限于 32 位(有符号)整数,因此如果文件等于或大于2 GB,比较可能无法按预期进行...
  • 我很困惑:先删除所有文件,然后删除所有大于...的文件?
  • 你的权利,谢谢!

标签: windows batch-file login command-line scripting


【解决方案1】:

IF "%%~zF" GEQ "10240" 引号强制进行字母比较。尝试: IF %%~zF GEQ 10240

【讨论】:

    猜你喜欢
    • 2013-01-06
    • 1970-01-01
    • 1970-01-01
    • 2022-10-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-05-14
    相关资源
    最近更新 更多