Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/windows/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Windows 如何在批处理脚本中以整数格式输出文件大小_Windows_Batch File_Scripting - Fatal编程技术网

Windows 如何在批处理脚本中以整数格式输出文件大小

Windows 如何在批处理脚本中以整数格式输出文件大小,windows,batch-file,scripting,Windows,Batch File,Scripting,我正在尝试循环浏览文件夹中的文件,并获取所有大于100MB的文件 现在,如果我这样做,我可以得到要输出的文件的大小(以字节为单位): for %%f in (%FOLDER_PATH%\*) do ( set /p val=<%%f echo %%~z%f ) (%FOLDER\u PATH%\*)中%%f的执行( set/p val=为什么当前文件的第一行被分配了命令行set/p val=,除了z和f之间多余的%,您的代码是有效的 只是从文件%%f中获取第一行内容,然后不使用此

我正在尝试循环浏览文件夹中的文件,并获取所有大于100MB的文件

现在,如果我这样做,我可以得到要输出的文件的大小(以字节为单位):

for %%f in (%FOLDER_PATH%\*) do (
  set /p val=<%%f
  echo %%~z%f
)
(%FOLDER\u PATH%\*)中%%f的
执行(

set/p val=为什么当前文件的第一行被分配了命令行
set/p val=,除了z和f之间多余的
%
,您的代码是有效的

只是从文件%%f中获取第一行内容,然后不使用此变量,这让我感到困惑

for %%f in (%FOLDER_PATH%\*) do (
    set /p val=<%%f

    Echo %%f:1:!val!

    if %%~zf GTR 104857600(
        echo file meets criteria
    )
)
(%FOLDER\u PATH%\*)中%%f的
执行(

set/p val=在
if%%~zf GTR 104857600(
)中的左括号前有一个额外的百分号,您需要一个空格。谢谢-第一行位来自教程,我只是在最初发布时忘了将其从代码中删除
@echo off
if not defined FOLDER_PATH set "FOLDER_PATH=%SystemRoot%"
for %%I in ("%FOLDER_PATH%\*") do (
    echo File "%%~I" has a file size of %%~zI bytes.
    if %%~zI GTR 104857600 echo File "%%~I" is greater 100 MiB.
)
set "FOLDER_PATH="
@echo off
setlocal EnableExtensions EnableDelayedExpansion
if not defined FOLDER_PATH set "FOLDER_PATH=%SystemRoot%"
for %%I in ("%FOLDER_PATH%\*") do (
    set "FileSize=%%~zI"
    if !FileSize! GTR 104857600 echo File "%%~I" is greater 100 MiB.
)
endlocal
@echo off
setlocal EnableExtensions EnableDelayedExpansion
if not defined FOLDER_PATH set "FOLDER_PATH=%SystemRoot%"
for %%I in ("%FOLDER_PATH%\*") do (
    echo File "%%~I" has a file size of %%~zI bytes.
    set "FileSize=%%~zI"
    if not "!FileSize:~9!" == "" (
        echo File "%%~I" is greater 100 MiB.
    ) else if !FileSize! GTR 104857600 (
        echo File "%%~I" is greater 100 MiB.
    )
)
endlocal
for %%f in (%FOLDER_PATH%\*) do (
    set /p val=<%%f

    Echo %%f:1:!val!

    if %%~zf GTR 104857600(
        echo file meets criteria
    )
)