gpt4 book ai didi

用于确定可用空间的 Python 脚本提供的结果不准确

转载 作者:太空宇宙 更新时间:2023-11-04 03:48:57 26 4
gpt4 key购买 nike

我有一个 python 脚本(如下),但无法提供准确的结果。我确信我搞砸了一些事情,但似乎无法弄清楚。如果有任何意见或建议,我将不胜感激。

该脚本的目的是报告特定安装点上总磁盘空间的剩余百分比。

#!/usr/bin/python 
import os
disk = os.statvfs("/Volumes/Promotions/")
totalBytes = float(disk.f_bsize*disk.f_blocks)
totalUsedSpace = float(disk.f_bsize*(disk.f_blocks-disk.f_bfree))
totalAvailSpace = float(disk.f_bsize*disk.f_bfree)
used = float(totalUsedSpace/1024/1024/1024/1024/1024)
avail = float (totalAvailSpace/1024/1024/1024/1024/1024)
total = float (totalBytes/1024/1024/1024/1024/1024)
percent = ((used)/(total)*100)

import smtplib

SERVER = "webmail.****.com"

FROM = "***@***.com" TO = ["***@***.com"] # must be a list

SUBJECT = "Hello!"

TEXT = "Total Available Remaining Percent Full\n" "%.2fTB" % (total) + " " "%.2fTB" % (avail) + " " "%.2fTB" % (used) + " " "%.2f%%" % (percent)

# Prepare actual message

message = """\
From: %s
To: %s
Subject: %s

%s """ % (FROM, ", ".join(TO), SUBJECT, TEXT)

# Send the mail

server = smtplib.SMTP(SERVER)
server.sendmail(FROM, TO, message)
server.quit()

以上发送以下内容的输出:

Total 0.2TB Available 0.00TB  Remaining 0.01TB  Percent Full 83.12%

问题是上面的路径实际大小为 138 TB,可用空间为 23.3 TB

任何意见或建议将不胜感激。

谢谢!特里

最佳答案

Tb = kb * kb * kb * kb

您使用 5 除以 1024,这会将字节表示为拍字节而不是太字节。

更好地使用转换函数:

def asTb(numberOfBytes):
TB = 1024**4
return numberOfBytes / TB

关于用于确定可用空间的 Python 脚本提供的结果不准确,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27047735/

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