如何制作一个批处理文件,只记录特定大小的图像名称。

3
我需要获取文件大小在某个特定值以上的图片名称,以便将它们替换为较小尺寸的图片。我已经使用以下代码检索了所有名称,但现在我只想要大图片的名称。
(FOR %%f IN (*.*)DO @ECHO %%f; )> myfiles.txt

问题是,“大小”指的是什么:你是在谈论文件大小(以字节为单位),还是在谈论图像的尺寸(以像素宽度和高度为单位)? - aschipfl
我在谈论文件大小。 - Mylan
2个回答

1
@(
 FOR %%f IN (*.*) DO (
  IF %%~zf GTR 100000 (
    (ECHO(%%f;)
  )
 ) 
)> myfiles.txt

请注意,%%~zf将以字节为单位进行扩展。


还有一种方法可以循环遍历不同的文件夹和子文件夹吗? - Mylan
@Mylan - 是的 - 使用 FOR /r %%f IN (*.*) DO ..,但这种方式会在文件中打印整个文件路径。 - npocmaka

0

文件大小大于等于1MB的示例:

(FOR %%f IN (*.*)DO @IF %%~tf GTE 1048576 ECHO %%f; )> myfiles.txt

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接