gpt4 book ai didi

java - 为什么使用 getFreeSpace/getTotalSpace/getUsableSpace 会给出与 df -H 命令不同的输出

转载 作者:太空宇宙 更新时间:2023-11-04 12:33:45 27 4
gpt4 key购买 nike

我有一个外部 SSD 磁盘 (/dev/sda)。

当输入 df -h 时:

size used avil use%
587G 383G 175G 69%

当输入 df -H 时:

size used avil use%
630G 411G 188G 69%

使用getTotalSpace()/(1024*1024)时,我得到:600772

使用getUsableSpace()/(1024*1024)时,我得到:178568

使用getFreeSpace()/(1024*1024)时,我得到:209108

如果我尝试计算亲子关系的使用情况,我将不会得到 69%。

有什么错误?

最佳答案

df 的 69% 的计算公式为“已使用/(已使用 + 可用)”,即 383/(383 + 175) = 69%。它不是按“已使用/大小”计算的。

Java 中没有“used”(它与“size - available”不同),因此无法进行相同的计算。

但是您可以在这两种情况下计算“可用/大小”:

  1. 188/630 = 30%
  2. 209108/600772 = 30%

没有错误。您正在比较不同的事物。

关于java - 为什么使用 getFreeSpace/getTotalSpace/getUsableSpace 会给出与 df -H 命令不同的输出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37560121/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com