是否有 Windows 命令行实用程序来列出子目录中超过特定​​大小的最大文件?

Umb*_*ule 19 windows disk-space command-line

希望能够在目录树中找到超过特定大小(例如 10MB)的文件的完整路径。

目前知道 Microsoft 的DiruseWindows XP Service Pack 2 支持工具的一部分),它可以满足我的需求,只是它只列出目录大小而不是文件。

小智 32

forfiles /P D:\ /M *.* /S /D +"01/17/2012"  /C "cmd /c if @fsize gtr 209715200 echo @path @fsize @fdate @ftime"
Run Code Online (Sandbox Code Playgroud)

将扫描 D:\ 及其子目录,查找最后修改日期大于“17-JAN-2012”且大小大于或等于 200MB 的所有文件,然后打印其详细信息。

forfiles 包含在某些 Windows Server 中,但默认情况下不包含在 Windows XP 中。您可以从位于http://www.microsoft.com/download/en/details.aspx?id=17657的“Windows Server 2003 Resource Kit”下载中提取它(尽管它说是用于 Windows Server,但它在 Win XP 上运行没有问题)。


Guy*_*mas 9

这听起来像是 PowerShell 的工作

获取子项

导航到有问题的目录,检查属性:

get-childitem | get-member
Run Code Online (Sandbox Code Playgroud)

length 和 FullName 看起来很有趣,例如:

get-childitem |ft fullname, length -auto
Run Code Online (Sandbox Code Playgroud)

一旦您掌握了基础知识,请尝试使用 where 语句进行过滤。

get-childitem | where-object {$_.length -gt 10000} |ft fullname, length -auto
Run Code Online (Sandbox Code Playgroud)

试验 100000

  • 使用 Get-ChildItem -recurse 进行递归搜索 (2认同)