我在python脚本中进行备份,但我需要获取以MB创建的tar.gz文件的大小
如何获得该文件的MB大小
答案 0 :(得分:32)
从您的问题中不清楚您是想要压缩文件还是未压缩文件的大小,但在前一种情况下,使用os.path.getsize
函数from the os module
>>> import os
>>> os.path.getsize('flickrapi-1.2.tar.gz')
35382L
要以兆字节为单位获得答案,您可以将答案右移20,例如
os.path.getsize('large.tar.gz') >> 20
虽然该操作将以整数完成 - 如果要保留一兆字节的分数,请改为(1024*1024.0)
。 (注意.0
,以便除数成为浮点数。)
更新:在下面的评论中,Johnsyweb指出了更为常见的producing human readable representations of file sizes的有用配方。
答案 1 :(得分:2)
使用os.stat()
功能获取统计结构。 st_size
属性是文件的大小(以字节为单位)。
答案 2 :(得分:0)
根据Python on-line docs,您应该查看size
对象的TarInfo
属性。
答案 3 :(得分:0)
您可以使用以下命令直接获取它,而无需任何淡褐色
os.path.getsize('filename.tar') >> 20
print str(filename.tgz) + " MB"