如何查找目录的累积大小


6

是否有一个用于dir列出目录大小的命令的开关?

这个页面说:

Dir还显示列出的文件和目录的总数,它们的累积大小以及磁盘上剩余的可用空间(以字节为单位)。

但它没有具体说明!任何帮助表示赞赏。

我不是在寻找批处理脚本,只是为了一行命令。

Answers:


6

试试dir /s /a directory-name。您将在第2行到最后一行看到总字节数。该/a标志告诉它在计数中包含任何系统或隐藏文件。


不行,args是不正确的。
Karan

适用于Win7 x64和WinXP的我。我不知道你为什么遇到麻烦。
妮可·汉密尔顿

它实际上适用于你/ a后的空格?奇怪的。另外,/ as / ah 包含系统和隐藏文件,而不是所有文件。/ a本身将包括一切。
Karan

你打赌。在两台机器上。你要知道,我觉得dir完全是笨重,不使用它自己,但,是的,它工作时,我尝试了它(和它重试您提出异议后)。就个人而言,我会用我自己做更直截了当ls命令,ls -lw! directory其中-l表示长列表,-w表示遍历子目录以计算大小,-!表示仅列出目录而不是其内容,从而生成带有结果的单行输出。但我明白了OP作为询问如何只用什么来从微软做的,这似乎做到这一点
妮可·汉密尔顿

1
@Nicole:A-ha,现在我已经知道你做错了什么!1)请检查您没有名为sh的目录。2)类型dir /s /a h /a s DirName就像你提到的那样。3)仔细检查输出。第一行应为“驱动器X中的卷为Y”,第二行“卷序列号为Z”,最重要的是,第3行为“未找到文件”,第4行为“目录” Drive:\ Path \ to \ DirName“后跟DirName的列表。第3行非常重要,请检查它是否存在。
Karan

3

如果您使用的是Windows Vista或更高版本,它将随PowerShell一起提供。然后,您可以直接从命令行运行此命令:

powershell -c "Get-ChildItem -Recurse 'path_to_dir' | Measure-Object -Property Length -Sum"

Sum 将是以字节为单位的大小。

您可以为某些早期版本的Windows下载并安装PowerShell。此外,我强烈建议您切换到PowerShell或POSIX shell。Windows命令行(cmd.exe)仅适用于更基本的操作; 除此之外,它可能会变得非常复杂。特别是如果你想要单行。


1
这就是微软永远无法杀掉Linux的原因。 du -sh /path。如果您通过安装像CYGWIN这样的POSIX shell来遵循Bob的建议,那么您也可以使用简化的命令。
UtahJarhead

1

dos / nt命令的一个很好的参考是http://ss64.com/ ; 有时technet更好,但ss64也将在底部列出其他相关方法来完成类似的行为。即:特定结果的命令“DIRUSE”,有时甚至是相同的Powershell命令。

BTW - gnuwin32项目有许多核心命令实用程序可以从nix世界获得,通常有一个直接针对需要做的事情...在这种情况下du命令,其中du -b将列出输出大小相同dir /A /Sdu -h使其成为人类可读。:)

希望有所帮助。


By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.