我希望能够以整数的形式获得磁盘上的空闲空间,最好是以字节或千字节作为整数。我一直没能找到办法来做这个。我的最终目标是创建一个while循环来复制一个文件,直到磁盘空间满了为止。
谢谢。任何帮助都将不胜感激。
发布于 2020-08-28 03:42:46
PS C:\> (Get-Volume -DriveLetter C).SizeRemaining
97864130560
它将输出一个UInt64
值,作为C:\驱动器上保持空闲的字节数。
如果要获取不同卷的这些信息,请使用Get-Volume
函数查找您要查找的驱动器号:
PS C:\> Get-Volume
DriveLetter FriendlyName FileSystemType DriveType HealthStatus OperationalStatus SizeRemaining Size
----------- ------------ -------------- --------- ------------ ----------------- ------------- ----
NTFS Fixed Healthy OK 84.1 MB 602 MB
C NTFS Fixed Healthy OK 91.14 GB 231.67 GB
Recovery NTFS Fixed Healthy OK 515 MB 529 MB
E NTFS Fixed Healthy OK 86.96 GB 231.67 GB
PS C:\> (Get-Volume -DriveLetter E).SizeRemaining
96593814487
您可以将该值转换为不同的存储大小:
# Replace 1MB with 1KB or 1GB or 1TB
PS C:\> (Get-Volume -DriveLetter C).SizeRemaining/1MB
93313.09765625
注意: MB是1兆字节(1,000字节)的表示法,但Windows实际上是以Mebibytes (1,024字节)计数,所以我的C驱动器有93,313 MiB空闲--而不是93,313 MB。我只是查了一下这篇文章,很感兴趣地阅读了维基百科这篇关于Mebi字节的文章的历史和用法部分,其中提到了https://en.wikipedia.org/wiki/Mebibyte实际上错误地报告了这些值(我今天测试了这些值,现在仍然是这样):
发布于 2020-08-28 11:41:54
你可以:
get-psdrive c
psdrive c
psdrive c | % free
https://stackoverflow.com/questions/63626545
复制相似问题